]> git.baikalelectronics.ru Git - kernel.git/commit
EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL
authorAnna Karbownik <anna.karbownik@intel.com>
Thu, 22 Feb 2018 15:18:13 +0000 (16:18 +0100)
committerBorislav Petkov <bp@suse.de>
Fri, 23 Feb 2018 11:05:37 +0000 (12:05 +0100)
commit11b662c0c328e2f9d6d20e44036d7cd07adb22f8
treecdc8f8ef36be30e378cb8356d264179990209b04
parentec86ef94f7e7b4fb720bc80e7ffb57326f152ab0
EDAC, sb_edac: Fix out of bound writes during DIMM configuration on KNL

Commit

  29def948abe6 ("EDAC, sb_edac: Drop NUM_CHANNELS from 8 back to 4")

decreased NUM_CHANNELS from 8 to 4, but this is not enough for Knights
Landing which supports up to 6 channels.

This caused out-of-bounds writes to pvt->mirror_mode and pvt->tolm
variables which don't pay critical role on KNL code path, so the memory
corruption wasn't causing any visible driver failures.

The easiest way of fixing it is to change NUM_CHANNELS to 6. Do that.

An alternative solution would be to restructure the KNL part of the
driver to 2MC/3channel representation.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Anna Karbownik <anna.karbownik@intel.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Tony Luck <tony.luck@intel.com>
Cc: jim.m.snow@intel.com
Cc: krzysztof.paliswiat@intel.com
Cc: lukasz.odzioba@intel.com
Cc: qiuxu.zhuo@intel.com
Cc: linux-edac <linux-edac@vger.kernel.org>
Cc: <stable@vger.kernel.org>
Fixes: 29def948abe6 ("EDAC, sb_edac: Drop NUM_CHANNELS from 8 back to 4")
Link: http://lkml.kernel.org/r/1519312693-4789-1-git-send-email-anna.karbownik@intel.com
[ Massage commit message. ]
Signed-off-by: Borislav Petkov <bp@suse.de>
drivers/edac/sb_edac.c