linux_dsm_epyc7002/drivers/edac
Borislav Petkov f0a56c4801 amd64_edac: Fix single-channel setups
It can happen that configurations are running in a single-channel mode
even with a dual-channel memory controller, by, say, putting the DIMMs
only on the one channel and leaving the other empty. This causes a
problem in init_csrows which implicitly assumes that when the second
channel is enabled, i.e. channel 1, the struct dimm hierarchy will be
present. Which is not.

So always allocate two channels unconditionally.

This provides for the nice side effect that the data structures are
initialized so some day, when memory hotplug is supported, it should
just work out of the box when all of a sudden a second channel appears.

Reported-and-tested-by: Roger Leigh <rleigh@debian.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
2013-07-29 17:22:41 +02:00
..
amd64_edac_dbg.c amd64_edac: convert sysfs logic to use struct device 2012-06-11 13:23:40 -03:00
amd64_edac_inj.c EDAC: Replace strict_strtoul() with kstrtoul() 2013-06-08 10:16:33 +02:00
amd64_edac.c amd64_edac: Fix single-channel setups 2013-07-29 17:22:41 +02:00
amd64_edac.h amd64_edac: Add Family 16h support 2013-04-19 12:46:50 +02:00
amd76x_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
amd8111_edac.c edac: Drop __DATE__ usage 2011-04-19 00:23:22 +02:00
amd8111_edac.h edac: AMD8111 driver header file 2009-04-02 19:05:03 -07:00
amd8131_edac.c edac: Drop __DATE__ usage 2011-04-19 00:23:22 +02:00
amd8131_edac.h tree-wide: fix comment/printk typos 2010-11-01 15:38:34 -04:00
cell_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
cpc925_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
e7xxx_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
e752x_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
edac_core.h edac: add support for raw error reports 2013-02-21 14:16:03 -03:00
edac_device_sysfs.c edac: Convert debugfX to edac_dbg(X, 2012-06-11 13:23:49 -03:00
edac_device.c Merge branch 'devel' 2012-07-29 21:11:05 -03:00
edac_mc_sysfs.c EDAC: Replace strict_strtol() with kstrtol() 2013-07-24 09:30:03 +02:00
edac_mc.c EDAC: Merge mci.mem_is_per_rank with mci.csbased 2013-03-16 06:32:30 +01:00
edac_module.c edac: initialize the core earlier 2013-02-21 11:06:36 -03:00
edac_module.h edac: create top-level debugfs directory 2012-06-12 12:15:49 -03:00
edac_pci_sysfs.c Linux 3.8-rc7 2013-02-20 15:45:52 -03:00
edac_pci.c EDAC: Respect operational state in edac_pci.c 2012-11-28 11:22:47 +01:00
edac_stub.c EDAC: Change Boris' email address 2012-10-30 10:05:51 +01:00
ghes_edac.c ghes_edac: fix to use list_for_each_entry_safe() when delete list items 2013-02-26 10:05:35 -03:00
highbank_l2_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
highbank_mc_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i7core_edac.c EDAC: Replace strict_strtoul() with kstrtoul() 2013-06-08 10:16:33 +02:00
i3000_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i3200_edac.c i3200_edac: Fix the logic that detects filled memories 2013-02-21 11:06:31 -03:00
i5000_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i5100_edac.c i5100_edac: convert to use simple_open() 2013-02-26 10:06:18 -03:00
i5400_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i7300_edac.c i7300_edac: Fix memory detection in single mode 2013-04-29 10:32:39 -03:00
i82443bxgx_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i82860_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i82875p_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
i82975x_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
Kconfig Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2013-07-13 14:52:21 -07:00
Makefile ghes_edac: Register at EDAC core the BIOS report 2013-02-25 19:42:12 -03:00
mce_amd_inj.c EDAC: Replace strict_strtoul() with kstrtoul() 2013-06-08 10:16:33 +02:00
mce_amd.c EDAC, MCE, AMD: Add an MCE signature for new Fam15h models 2013-06-08 10:17:03 +02:00
mce_amd.h EDAC, MCE, AMD: Remove unneeded exports 2013-01-22 22:40:03 +01:00
mpc85xx_edac.c mpc85xx_edac: Fix typo 2013-02-10 13:28:41 +01:00
mpc85xx_edac.h edac: Drop __DATE__ usage 2011-04-19 00:23:22 +02:00
mv64x60_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
mv64x60_edac.h edac: Drop __DATE__ usage 2011-04-19 00:23:22 +02:00
octeon_edac-l2c.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
octeon_edac-lmc.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
octeon_edac-pc.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
octeon_edac-pci.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
pasemi_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
ppc4xx_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
ppc4xx_edac.h edac: new ppc4xx driver module 2009-04-02 19:05:03 -07:00
r82600_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
sb_edac.c edac: sb_edac.c should not require prescence of IMC_DDRIO device 2013-04-29 10:32:40 -03:00
tile_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00
x38_edac.c Drivers: edac: remove __dev* attributes. 2013-01-03 15:57:03 -08:00