The following is the GNU All-permissive License as recommended in https://www.gnu.org/licenses/license-recommendations.en.html
Copyright (C) 2024 Free Software Foundation sysadmin@fsf.org
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.
Contributions are welcome. See https://savannah.gnu.org/maintenance/fsf/.
Mapping RAM ECC warnings to the right DIMM
EEC ram warnings on librebooted kgpe-d16 with 4.2.0 kernel:
[32310.838759] [Hardware Error]: Corrected error, no action required.
[32310.838781] [Hardware Error]: CPU:24 (15:1:2) MC4_STATUS[-|CE|MiscV|-|AddrV|-|-|CECC]: 0x9c2c4000f8080a13
[32310.838811] [Hardware Error]: MC4 Error Address: 0x0000003feee4e3f0
[32310.838817] [Hardware Error]: MC4 Error (node 3): DRAM ECC error detected on the NB.
[32310.838841] EDAC MC3: 1 CE on mc#3csrow#1channel#0 (csrow:1 channel:0 page:0x3feee4e offset:0x3f0 grain:0 syndrome:0xf858)
[32310.838846] [Hardware Error]: cache level: L3/GEN, mem/io: MEM, mem-tx: RD, part-proc: RES (no timeout)
This location corresponds to this device in the sysfs (in a 4.2 kernel):
$ cat /sys/devices/system/edac/mc/mc3/rank2/dimm_label
mc#3csrow#1channel#0
Advice on #coreboot regarding which ram module may be the culprit (see likely correction below):
11:54 < personB> personA: MC 3 CSROW 1 is "memory controller 3" and if you are using dual-rank DIMMs it would be the first DIMM on the channel. I'd guess slot D1
11:54 < personB> or actually D2, given ASUS flipped the numbers
12:41 < personA> personB: I predict this might corresponds to slot G2. (A/B would correspond to mc0, so G/H would be mc3. channel 0, so G, not H. And slot 2, not 1, because csrow 1 of
dual-ranked ram is slot 0 (slot 2 in a kgpe-d16?), so possibly G2.) What do you think?
12:42 < personB> personA: Yes, you are correct. I was thinking of a different CPU entirely, mea culpa
It seems likely that csrow0/1 is slot 1 and csrow2/3 is slot 2 on the kgpe-d16 when using dual ranked ram. This is being tested at the time of writing.
Other helpful information that may assist in mapping errors to specific ram slots:
- https://www.kernel.org/doc/Documentation/edac.txt
- https://serverfault.com/questions/5672/ecc-chipkill-errors-which-dimm#8785