diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.9.21/0007-x86-mce-Improve-error-message-when-kernel-cannot-rec.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.9.21/0007-x86-mce-Improve-error-message-when-kernel-cannot-rec.patch | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.9.21/0007-x86-mce-Improve-error-message-when-kernel-cannot-rec.patch b/common/recipes-kernel/linux/linux-yocto-4.9.21/0007-x86-mce-Improve-error-message-when-kernel-cannot-rec.patch new file mode 100644 index 00000000..3ddb8ece --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.9.21/0007-x86-mce-Improve-error-message-when-kernel-cannot-rec.patch @@ -0,0 +1,59 @@ +From f08520b8eba49e29d01f53ac8f2a52022e435744 Mon Sep 17 00:00:00 2001 +From: Tony Luck <tony.luck@intel.com> +Date: Fri, 25 May 2018 14:41:39 -0700 +Subject: [PATCH 07/10] x86/mce: Improve error message when kernel cannot + recover + +commit c7d606f560e4c698884697fef503e4abacdd8c25 upstream. + +Since we added support to add recovery from some errors inside the kernel in: + +commit b2f9d678e28c ("x86/mce: Check for faults tagged in EXTABLE_CLASS_FAULT exception table entries") + +we have done a less than stellar job at reporting the cause of recoverable +machine checks that occur in other parts of the kernel. The user just gets +the unhelpful message: + + mce: [Hardware Error]: Machine check: Action required: unknown MCACOD + +doubly unhelpful when they check the manual for the reported IA32_MSR_STATUS.MCACOD +and see that it is listed as one of the standard recoverable values. + +Add an extra rule to the MCE severity table to catch this case and report it +as: + + mce: [Hardware Error]: Machine check: Data load in unrecoverable area of kernel + +Fixes: b2f9d678e28c ("x86/mce: Check for faults tagged in EXTABLE_CLASS_FAULT exception table entries") +Signed-off-by: Tony Luck <tony.luck@intel.com> +Signed-off-by: Thomas Gleixner <tglx@linutronix.de> +Cc: Qiuxu Zhuo <qiuxu.zhuo@intel.com> +Cc: Ashok Raj <ashok.raj@intel.com> +Cc: stable@vger.kernel.org # 4.6+ +Cc: Dan Williams <dan.j.williams@intel.com> +Cc: Borislav Petkov <bp@suse.de> +Link: https://lkml.kernel.org/r/4cc7c465150a9a48b8b9f45d0b840278e77eb9b5.1527283897.git.tony.luck@intel.com +Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> +--- + arch/x86/kernel/cpu/mcheck/mce-severity.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/arch/x86/kernel/cpu/mcheck/mce-severity.c b/arch/x86/kernel/cpu/mcheck/mce-severity.c +index c7efbcf..17dbbdbb 100644 +--- a/arch/x86/kernel/cpu/mcheck/mce-severity.c ++++ b/arch/x86/kernel/cpu/mcheck/mce-severity.c +@@ -143,6 +143,11 @@ static struct severity { + SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|MCACOD_INSTR), + USER + ), ++ MCESEV( ++ PANIC, "Data load in unrecoverable area of kernel", ++ SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|MCACOD_DATA), ++ KERNEL ++ ), + #endif + MCESEV( + PANIC, "Action required: unknown MCACOD", +-- +2.7.4 + |