Machine-check exception

From ArchWiki
Revision as of 19:42, 4 October 2011 by Jstjohn (talk | contribs) (removed example config files because mcelog-1.0pre3-3 fixes the packing issue)
Jump to: navigation, search

This article aims to help users implement services to actively monitor, log, and report hardware errors. A machine check exception (MCE) is an error generated by the CPU when the CPU detects that a hardware error or failure has occurred.


Machine check exceptions (MCEs) can occur for a variety of reasons ranging from undesired or out-of-spec voltages from the power supply, from cosmic radiation flipping bits in memory DIMMs, or from other miscellaneous faults, including faulty software triggering hardware errors.

Installing mcelog

The mcelog daemon written by Andi Kleen is one of the methods in which one can handle MCEs. The Template:Package Official daemon can be found in the Template:Codeline repository and can be installed with pacman.

pacman -S mcelog

Configuring mcelog

mcelog's configuration file is supposed to be located at Template:Filename, but as of 2011-09-29, that file is not created after running Template:Codeline.

  • Make sure the files are owned by root:root.
chown root:root /etc/mcelog.conf
chown root:root /etc/logrotate.d/mcelog    # (or /etc/logrotate.d/mcelog.logrotate)

Running mcelog as a daemon

It is recommended by upstream to always run mcelog as a daemon, so edit Template:Filename and set Template:Codeline.

Finally, Template:Codeline needs to be added to the Template:Codeline array in Template:Filename.

Additional configuration options

The following options are probably recommended:

syslog = yes
socket-path = /var/run/mcelog-client

Hardware documentation from CPU manufacturers

See Also