[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-3.4-testing] mce: Replace BUG() with a console warning in the MCE handler.



# HG changeset patch
# User Keith Coleman <keith.coleman@xxxxxxxxxxxxx>
# Date 1304924793 14400
# Node ID 3b39c0fd26a6ee25e953ea0f2852c1253bd94c51
# Parent  14709d196e4389f7b9508df71d54277844550868
mce: Replace BUG() with a console warning in the MCE handler.

If the hardware reports corrected errors that we didn't see through
the status MSRs, complain on the console but don't BUG() the machine.

Signed-off-by: Tim Deegan <Tim.Deegan@xxxxxxxxxx>
xen-unstable changeset:   21757:50cf787b70eb
xen-unstable date:        Fri Jul 09 12:21:31 2010 +0100
---


diff -r 14709d196e43 -r 3b39c0fd26a6 xen/arch/x86/cpu/mcheck/amd_nonfatal.c
--- a/xen/arch/x86/cpu/mcheck/amd_nonfatal.c    Wed Jun 30 18:26:13 2010 +0100
+++ b/xen/arch/x86/cpu/mcheck/amd_nonfatal.c    Mon May 09 03:06:33 2011 -0400
@@ -155,14 +155,19 @@
 
                /* HW does not count *all* kinds of correctable errors.
                 * Thus it is possible, that the polling routine finds an
-                * correctable error even if the HW reports nothing.
-                * However, the other way around is not possible (= BUG).
-                */ 
+                * correctable error even if the HW reports nothing. */ 
                if (counter > 0) {
                        /* HW reported correctable errors,
                         * the polling routine did not find...
                         */
-                       BUG_ON(adjust == 0);
+                       if (adjust == 0) {
+                               printk("CPU counter reports %"PRIu32
+                                       " correctable hardware error%s that %s"
+                                       " not reported by the status MSRs\n",
+                                       counter,
+                                       (counter == 1 ? "" : "s"),
+                                       (counter == 1 ? "was" : "were"));
+                       }
                        /* subtract 1 to not double count the error 
                         * from the polling service routine */ 
                        adjust += (counter - 1);

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.