x86/MCE: Do not look at panic_on_oops in the severity grading
authorYinghai Lu <yinghai.lu@oracle.com>
Fri, 16 Sep 2016 20:23:25 +0000 (13:23 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 8 Nov 2016 16:10:12 +0000 (17:10 +0100)
The MCE tolerance levels control whether we panic on a machine check or do
something else like generating a signal and logging error information. This
is controlled by the mce=<level> command line parameter.

However, if panic_on_oops is set, it will force a panic for such an MCE
even though the user didn't want to.

So don't check panic_on_oops in the severity grading anymore.

One of the use cases for that is recovery from uncorrectable errors with
mce=2.

 [ Boris: rewrite commit message. ]

Signed-off-by: Yinghai Lu <yinghai.lu@oracle.com>
Acked-by: Tony Luck <tony.luck@intel.com>
Cc: linux-edac <linux-edac@vger.kernel.org>
Cc: x86-ml <x86@kernel.org>
Link: http://lkml.kernel.org/r/20160916202325.4972-1-yinghai@kernel.org
Signed-off-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/cpu/mcheck/mce-severity.c

index 631356c..c7efbcf 100644 (file)
@@ -311,7 +311,7 @@ static int mce_severity_intel(struct mce *m, int tolerant, char **msg, bool is_e
                        *msg = s->msg;
                s->covered = 1;
                if (s->sev >= MCE_UC_SEVERITY && ctx == IN_KERNEL) {
-                       if (panic_on_oops || tolerant < 1)
+                       if (tolerant < 1)
                                return MCE_PANIC_SEVERITY;
                }
                return s->sev;