File: mcelog.8

package info (click to toggle)
mcelog 0.7-4
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 156 kB
  • ctags: 197
  • sloc: ansic: 1,170; makefile: 68; sh: 20
file content (94 lines) | stat: -rw-r--r-- 2,912 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
.TH MCELOG 8 "Mar 2004" "SuSE Labs" "Linux's Administrator's Manual"
.SH NAME
mcelog \- Print machine check log from x86-64 kernel.
.SH SYNOPSIS
mcelog [\-\-syslog] [\-\-k8|\-\-p4|\-\-generic] [\-\-ignorenodev] [\-\-dmi] [\-\-filter] [device]
.br
mcelog [\-\-k8|\-\-p4|\-\-generic] \-\-ascii
.SH DESCRIPTION
Linux x86-64 kernels since 2.6.4 don't print recoverable machine check errors
to the kernel log anymore. Instead they are saved into a special 
kernel buffer accessible using
.I /dev/mcelog.
mcelog reads /dev/mcelog and prints the stored machine check records
to stdout. Then the stored machine check records in the kernel
buffer are deleted.

When the 
.B \-\-syslog
option is specified redirect output to system log.

When
.B \-\-k8
is specified assume the events are for a AMD Opteron or Athlon 64 or Athlon
FX CPU. 
With
.B \-\-p4
is specified assume the events are for a Intel Pentium 4 or Intel Xeon.
When 
.B \-\-generic 
all the fields are dumped without CPU specific decoding.
Default is to decode for the CPU mcelog is running on.

With the
.B \-\-dmi
option mcelog will look up the addresses reported in machine
checks in the 
.I SMBIOS/DMI
tables of the BIOS.
This can sometimes tell you which DIMM or memory controller
has developed a problem. More often the information reported
by the BIOS is either subtly or obviously wrong or useless.
This option requires that mcelog has read access to /dev/mem
(normally requires root) and runs on the same machine
in the same hardware configuration as when the machine check
event happened.

When 
.B \-\-ignorenodev
is specified then mcelog will exit silently when the device
cannot be opened. This is useful in virtualized environment
with limited devices.

When 
.B \-\-filter
is specified 
.I mcelog
will filter out known broken machine check events.

When a device is specified the machine check logs are read from
device instead of the default
.I /dev/mcelog.

With the 
.B \-\-ascii
option mcelog decodes a fatal machine check panic generated
by the kernel ("CPU n: Machine Check Exception ...") in ASCII from stdout.
This is useful to make sense of the hexadecimal numbers in there.
Note that when the panic comes from a different machine than 
where mcelog is running on you might need to specify the correct
architecture (
.I \-\-k8
or
.I \-\-p4 
).

.SH NOTES
The kernel prefers old messages over new. If the log buffer overflows
only old ones will be kept.

The exact output depends on the CPU.

This program should be run regularly from cron to collect
machine check events.

SMBIOS/DMI output is very unreliable and often wrong. Not Linux's
fault - complain to your motherboard vendor.
.SH FILES
/dev/mcelog (char 10, minor 227) 
.SH SEE ALSO
AMD x86-64 architecture programmer's manual, Volume 2, System programming
.br
IA32 Intel Architecture Software developer's manual, Volume 3, System programming guide
.br
Datasheet of your CPU.