Eu notei um monte de erros que recentemente apareceram em /var/log/messages
em um de nossos servidores (abaixo). No entanto, o cliente mce parece ter menos certeza da origem do erro do que as entradas decodificadas no syslog. Existe algum tipo de chave a ser usada para interpretar a saída do MCE?
Nov 12 04:19:19 areion kernel: [14698753.176035] Machine check events logged
Nov 12 04:19:19 areion mcelog: HARDWARE ERROR. This is *NOT* a software problem!
Nov 12 04:19:19 areion mcelog: Please contact your hardware vendor
Nov 12 04:19:19 areion mcelog: MCE 0
Nov 12 04:19:19 areion mcelog: CPU 0 BANK 8
Nov 12 04:19:19 areion mcelog: MISC 640738dd0009159c ADDR 96236c6c0
Nov 12 04:19:19 areion mcelog: TIME 1352711959 Mon Nov 12 04:19:19 2012
Nov 12 04:19:19 areion mcelog: MCG status:
Nov 12 04:19:19 areion mcelog: MCi status:
Nov 12 04:19:19 areion mcelog: MCi_MISC register valid
Nov 12 04:19:19 areion mcelog: MCi_ADDR register valid
Nov 12 04:19:19 areion mcelog: MCA: MEMORY CONTROLLER RD_CHANNELunspecified_ERR
Nov 12 04:19:19 areion mcelog: Transaction: Memory read error
Nov 12 04:19:19 areion mcelog: STATUS 8c0000400001009f MCGSTATUS 0
Nov 12 04:19:19 areion mcelog: MCGCAP 1c09 APICID 20 SOCKETID 1
Nov 12 04:19:19 areion mcelog: CPUID Vendor Intel Family 6 Model 44
Todos os erros parecem estar conectados ao mesmo banco de memória:
areion:~# awk -F'mcelog:' '/mcelog:.*BANK/{ print $2; }' < /var/log/messages |uniq
CPU 0 BANK 8
Eu tenho o daemon mcelog rodando, e quando eu checo por informação de erro, ele não parece saber de onde os erros estão vindo. Só que eles estão associados com CPU0
(só temos uma CPU nessa caixa):
Memory errors
SOCKET 1 CHANNEL any DIMM any
corrected memory errors:
77 total
77 in 24h
uncorrected memory errors:
0 total
0 in 24h
Per page corrected memory statistics:
359ffc000: total 2 2 in 24h online
3b93cc000: total 2 2 in 24h online
3ce45c000: total 2 2 in 24h online
96236c000: total 20 20 in 24h online triggered
96545c000: total 9 9 in 24h online
96a82c000: total 9 9 in 24h online
96a8ec000: total 1 1 in 24h online
96fb6c000: total 15 15 in 24h online triggered
9c2edc000: total 15 15 in 24h online triggered
9c5eac000: total 1 1 in 24h online
9c6a1c000: total 1 1 in 24h online
Não está claro como interpretar essa informação. Por um lado, o cliente mce não indica canal ou DIMM, mas a mensagem decodificada indica que os erros ocorrem no DIMM 8. dmesg
parece indicar que apenas 42 mensagens foram registradas:
[14698753.176035] Machine check events logged
[14698753.629174] Machine check events logged
[14698815.338595] __ratelimit: 38 callbacks suppressed
[14698815.338628] Machine check events logged
[14698816.020797] Machine check events logged
Parece que estou recebendo mensagens confusas, o que me faz pensar em quais suposições fazer com base nas informações informadas das várias fontes.
Informações diversas:
areion:~# grep 'model name' /proc/cpuinfo |uniq
model name : Intel(R) Xeon(R) CPU X5670 @ 2.93GHz
areion:~# apt-cache policy mcelog |grep Installed
Installed: 1.0~pre3-3
areion:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 6.0.6 (squeeze)
Release: 6.0.6
Codename: squeeze