MC0, baris 2, dan saluran 0 adalah signifikan. Coba ganti DIMMA1 pada CPU0.
Sebagai contoh, saya harus mengidentifikasi DIMM buruk di server Linux dengan 16 slot DIMM terisi penuh dan dua CPU. Ini adalah kesalahan yang saya lihat di konsol:
EDAC k8 MC1: general bus error: participating processor(local node origin), time-out(no timeout) memory transaction type(generic read), mem or i/o(mem access), cache level(generic)
EDAC MC1: CE page 0x103ca78, offset 0xf88, grain 8, syndrome 0x9f65, row 1, channel 0, label "": k8_edac
EDAC MC1: CE - no information available: k8_edac Error Overflow set
EDAC k8 MC1: extended error code: ECC chipkill x4 error
DIMM buruk di server saya adalah DIMMA0 di CPU1.
EDAC adalah singkatan dari Deteksi Kesalahan dan Koreksi dan didokumentasikan di http://www.kernel.org/doc/Documentation/edac.txt dan /usr/share/doc/kernel-doc-2.6*/Documentation/drivers/edac/edac .txt di sistem saya (RHEL5). CE adalah singkatan dari "kesalahan yang dapat diperbaiki" dan seperti yang ditunjukkan dalam dokumentasi, "CE memberikan indikasi awal bahwa DIMM mulai gagal."
Kembali ke kesalahan EDAC di atas yang saya lihat di konsol server saya, MC1 (Memory Controller 1) berarti CPU1, baris 1 disebut sebagai csrow1 (Chip-Select Row 1) dalam dokumentasi Linux EDAC, dan saluran 0 berarti saluran memori 0 Saya memeriksa grafik di http://www.kernel.org/doc/Documentation/edac.txt untuk melihat bahwa csrow1 dan Channel 0 berhubungan dengan DIMM_A0 (DIMMA0 pada sistem saya):
Channel 0 Channel 1
===================================
csrow0 | DIMM_A0 | DIMM_B0 |
csrow1 | DIMM_A0 | DIMM_B0 |
===================================
===================================
csrow2 | DIMM_A1 | DIMM_B1 |
csrow3 | DIMM_A1 | DIMM_B1 |
===================================
(Sebagai contoh lain, jika saya melihat kesalahan pada MC0, csrow4, dan Channel 1, saya akan mengganti DIMMB2 pada CPU0.)
Tentu saja, sebenarnya ada dua slot DIMM yang disebut DIMMA0 di server saya (satu untuk setiap CPU), tetapi sekali lagi kesalahan MC1 sesuai dengan CPU1, yang terdaftar di bawah "Bank Locator" di output dari dmidecode:
[root@rce-8 ~]# dmidecode -t memory | grep DIMMA0 -B9 -A8
Handle 0x002E, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0x002B
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: DIMM
Set: None
Locator: DIMMA0
Bank Locator: CPU0
Type: DDR2
Type Detail: Synchronous
Speed: 533 MHz (1.9 ns)
Manufacturer:
Serial Number:
Asset Tag:
Part Number:
--
Handle 0x003E, DMI type 17, 27 bytes.
Memory Device
Array Handle: 0x002B
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: DIMM
Set: None
Locator: DIMMA0
Bank Locator: CPU1
Type: DDR2
Type Detail: Synchronous
Speed: 533 MHz (1.9 ns)
Manufacturer:
Serial Number:
Asset Tag:
Part Number:
(Di workstation saya, dmidecode sebenarnya menunjukkan Nomor Bagian dan Nomor Seri untuk DIMM saya, yang sangat berguna.)
Selain melihat kesalahan pada konsol dan log, Anda juga dapat melihat kesalahan per MC / CPU, baris / csrow, dan saluran dengan memeriksa / sys / devices / system / edac. Dalam kasus saya kesalahannya hanya pada MC1, csrow1, saluran 0:
[root@rce-8 ~]# grep "[0-9]" /sys/devices/system/edac/mc/mc*/csrow*/ch*_ce_count
/sys/devices/system/edac/mc/mc0/csrow0/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow0/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow1/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow1/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow2/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow2/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow3/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow3/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow4/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow4/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow5/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow5/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow6/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow6/ch1_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow7/ch0_ce_count:0
/sys/devices/system/edac/mc/mc0/csrow7/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow0/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow0/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow1/ch0_ce_count:6941652
/sys/devices/system/edac/mc/mc1/csrow1/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow2/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow2/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow3/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow3/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow4/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow4/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow5/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow5/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow6/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow6/ch1_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow7/ch0_ce_count:0
/sys/devices/system/edac/mc/mc1/csrow7/ch1_ce_count:0
Saya harap contoh ini bermanfaat bagi siapa pun yang mencoba mengidentifikasi DIMM yang buruk berdasarkan kesalahan EDAC. Untuk informasi lebih lanjut, saya sangat merekomendasikan membaca semua dokumentasi Linux EDAC di http://www.kernel.org/doc/Documentation/edac.txt