OSDN Git Service

EDAC, sb_edac: Fix missing DIMM sysfs entries with KNL SNC2/SNC4 mode
authorLuis Felipe Sandoval Castro <luis.felipe.sandoval.castro@intel.com>
Thu, 28 Sep 2017 13:54:42 +0000 (08:54 -0500)
committerBorislav Petkov <bp@suse.de>
Wed, 11 Oct 2017 13:57:25 +0000 (15:57 +0200)
commit24281a2f4ca569d44e44e4cbc500cf08e7bb4c36
tree391b0dea571a87a61870917f1501572524fffdeb
parent88ae80aa609c7db3e3cc98e97e05badbcc6347dc
EDAC, sb_edac: Fix missing DIMM sysfs entries with KNL SNC2/SNC4 mode

When figuring out the size of the DIMMs and the cluster mode is SNC2 or SNC4 the
current algorithm ignores the contribution of some of the channels resulting in
EDAC never knowing of the existence of some DIMMs attached to such channels (thus
sysfs is not populated).

Instead of selectively iterating from 0 to interlv_ways when looking for all the
participants in the interleave, do an exhaustive search and iterate from 0 to
KNL_MAX_CHANNELS. The algorithm is already smart enough to consider participants
only one time.

This works fine in all KNL cluster modes and even when there are missing DIMMs
as the contribution of those channels is 0.

Signed-off-by: Luis Felipe Sandoval Castro <luis.felipe.sandoval.castro@intel.com>
Acked-by: Tony Luck <tony.luck@intel.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: arozansk@redhat.com
Cc: linux-edac <linux-edac@vger.kernel.org>
Cc: qiuxu.zhuo@intel.com
Link: http://lkml.kernel.org/r/1506606882-90521-1-git-send-email-luis.felipe.sandoval.castro@intel.com
Signed-off-by: Borislav Petkov <bp@suse.de>
drivers/edac/sb_edac.c