Skip to contentSkip to conversation

Why write CPER_NOTIFY_MCE to ERST when reboot

DISCUSSION Joe Jin 3 participants 4 messages May 31, 2013 – Jun 1, 2013 ACPI

lore
Share & tools
lore

Joe Jin

author
#0 lore raw

Hi Tony,

With commit 0bb77c46 "pstore: X86 platform interface using ACPI/APEI/ERST" when reboot the server kernel will call erst_writer() to write CPER_NOTIFY_MCE to ERST, if reboot the server to Windows we find MCE from system event logs. Any reason write this to ERST when reboot?

Any input will appreciate!

Regards,
Joe

#1 lore raw
Quoted 7 lines · Joe Jin

Hi Tony,

With commit 0bb77c46 "pstore: X86 platform interface using ACPI/APEI/ERST" when reboot the server kernel will call erst_writer() to write CPER_NOTIFY_MCE to ERST, if reboot the server to Windows we find MCE from system event logs. Any reason write this to ERST when reboot?

Quoted 8 lines

Any input will appreciate!

Regards,
Joe
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

Hi Joe,
I guess this is used to handle an uncorrectable MCE. When
uncorrectable MCE happens,
the whole disk io stack is unreliable so we couldn't write MCE record to disk, ERST is the
last method to store the MCE record and OS could retrieve this record from ERST on next
reboot.
Regards!
Gerry

#2 lore raw

Gerry has this right - we want to preserve the error information, but we don't trust our kernel enough to have it write to a regular disk (perhaps it has no access to I/O because of the error - or worse, perhaps it might write to the wrong place or the wrong disk).

In theory data the information in the machine check banks is preserved across a warm reset for the reboot - but in practice we may sometimes need a power-cycle and full cold reset. Also I've heard that on some systems the BIOS clears the banks before the OS can see them.

-Tony

author
#3 lore raw

Tony and Gerry, thanks!

Regards,
Joe

Quoted 12 lines · Tony

Gerry has this right - we want to preserve the error information, but we don't trust our kernel enough to have it write to a regular disk (perhaps it has no access to I/O because of the error - or worse, perhaps it might write to the wrong place or the wrong disk).

In theory data the information in the machine check banks is preserved across a warm reset for the reboot - but in practice we may sometimes need a power-cycle and full cold reset. Also I've heard that on some systems the BIOS clears the banks before the OS can see them.

-Tony

Signature · 4 lines
Oracle <http://www.oracle.com>
Joe Jin | Software Development Senior Manager | +8610.6106.5624
ORACLE | Linux and Virtualization
No. 24 Zhongguancun Software Park, Haidian District | 100193 Beijing