Luis Felipe Sandoval Castro
24281a2f4c
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>
2017-10-11 15:57:25 +02:00
..
altera_edac.c
EDAC, altera: Fix error handling path in altr_edac_device_probe()
2017-08-18 18:21:27 +02:00
altera_edac.h
EDAC, altera: Rename device trigger to common name
2016-09-01 08:55:24 +02:00
amd64_edac.c
EDAC: Add owner check to the x86 platform drivers
2017-09-25 13:09:39 +02:00
amd64_edac.h
EDAC, amd64: Bump driver version
2017-02-14 11:58:05 +01:00
amd64_edac_dbg.c
amd64_edac_inj.c
amd76x_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
amd8111_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
amd8111_edac.h
amd8131_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
amd8131_edac.h
cell_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
cpc925_edac.c
EDAC, cpc925, ppc4xx: Convert to using %pOF instead of full_name
2017-07-19 07:42:41 +02:00
debugfs.c
EDAC: Use edac_debugfs_remove_recursive() in edac_debugfs_exit()
2016-02-10 10:37:46 +01:00
e7xxx_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
e752x_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
edac_device.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
edac_device.h
edac: move documentation from edac_device to edac_core.h
2016-12-15 08:54:51 -02:00
edac_device_sysfs.c
edac: move EDAC device definitions to drivers/edac/edac_device.h
2016-12-15 08:54:51 -02:00
edac_mc.c
EDAC: Add helper which returns the loaded platform driver
2017-09-25 12:55:59 +02:00
edac_mc.h
EDAC: Add helper which returns the loaded platform driver
2017-09-25 12:55:59 +02:00
edac_mc_sysfs.c
EDAC: Make device_type const
2017-08-20 13:12:32 +02:00
edac_module.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
edac_module.h
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
edac_pci.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
edac_pci.h
edac: move documentation from edac_pci*.c to edac_pci.h
2016-12-15 08:54:51 -02:00
edac_pci_sysfs.c
edac: move documentation from edac_pci*.c to edac_pci.h
2016-12-15 08:54:51 -02:00
fsl_ddr_edac.c
EDAC, fsl_ddr: Make locally used symbols static
2017-02-09 17:40:54 +01:00
fsl_ddr_edac.h
EDAC, fsl_ddr: Add missing DDR DRAM types
2016-09-01 10:28:01 +02:00
ghes_edac.c
EDAC, ghes: Add platform check
2017-09-25 12:55:12 +02:00
highbank_l2_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
highbank_mc_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i7core_edac.c
EDAC: Handle return value of kasprintf()
2017-09-21 12:18:44 +02:00
i3000_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i3200_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i5000_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i5100_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i5400_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i7300_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i82443bxgx_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i82860_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i82875p_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
i82975x_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
ie31200_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
Kconfig
EDAC, ghes: Do not enable it by default
2017-04-27 14:15:38 +02:00
layerscape_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
Makefile
EDAC: Delete edac_stub.c
2017-04-10 17:14:48 +02:00
mce_amd.c
EDAC, mce_amd: Get rid of local var in amd_filter_mce()
2017-08-21 17:59:38 +02:00
mce_amd.h
EDAC/mce/amd: Unexport amd_decode_mce()
2017-01-24 09:14:55 +01:00
mpc85xx_edac.c
EDAC, mpc85xx: Add T2080 l2-cache support
2017-02-03 10:36:35 +01:00
mpc85xx_edac.h
EDAC, fsl-ddr: Separate FSL DDR driver from MPC85xx
2016-09-01 10:28:00 +02:00
mv64x60_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
mv64x60_edac.h
octeon_edac-l2c.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
octeon_edac-lmc.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
octeon_edac-pc.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
octeon_edac-pci.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
pasemi_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
pnd2_edac.c
EDAC: Add owner check to the x86 platform drivers
2017-09-25 13:09:39 +02:00
pnd2_edac.h
EDAC, pnd2_edac: Add new EDAC driver for Intel SoC platforms
2017-03-16 12:40:52 +01:00
ppc4xx_edac.c
EDAC, cpc925, ppc4xx: Convert to using %pOF instead of full_name
2017-07-19 07:42:41 +02:00
ppc4xx_edac.h
r82600_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
sb_edac.c
EDAC, sb_edac: Fix missing DIMM sysfs entries with KNL SNC2/SNC4 mode
2017-10-11 15:57:25 +02:00
skx_edac.c
EDAC, skx_edac: Handle systems with segmented PCI busses
2017-09-28 18:01:55 +02:00
synopsys_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
thunderx_edac.c
EDAC, thunderx: Remove suspend/resume support
2017-09-27 17:35:58 +02:00
tile_edac.c
edac: rename edac_core.h to edac_mc.h
2016-12-15 08:54:51 -02:00
wq.c
EDAC, wq: Remove deprecated create_singlethread_workqueue()
2016-08-15 07:21:29 +02:00
x38_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00
xgene_edac.c
EDAC: Get rid of mci->mod_ver
2017-07-17 13:42:48 +02:00