summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAndi Kleen2009-05-27 21:56:53 +0200
committerH. Peter Anvin2009-06-03 23:40:39 +0200
commitde8a84d85ad8bb46d01d72ebc57030b95075603c (patch)
tree3253f696d6d4d82a392ca55c4f32f9e3610a83e0 /arch
parentx86, mce: extend struct mce user interface with more information. (diff)
downloadkernel-qcow2-linux-de8a84d85ad8bb46d01d72ebc57030b95075603c.tar.gz
kernel-qcow2-linux-de8a84d85ad8bb46d01d72ebc57030b95075603c.tar.xz
kernel-qcow2-linux-de8a84d85ad8bb46d01d72ebc57030b95075603c.zip
x86, mce: log corrected errors when panicing
Normally the machine check handler ignores corrected errors and leaves them to machine_check_poll(). But when panicing mcp won't run, so log all errors. Note: this can still miss some cases until the "early no way out" patch later is applied too. Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/cpu/mcheck/mce.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index ba68449c22a1..86806e52fc40 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -412,9 +412,9 @@ void do_machine_check(struct pt_regs *regs, long error_code)
/*
* Non uncorrected errors are handled by machine_check_poll
- * Leave them alone.
+ * Leave them alone, unless this panics.
*/
- if ((m.status & MCI_STATUS_UC) == 0)
+ if ((m.status & MCI_STATUS_UC) == 0 && !no_way_out)
continue;
/*