summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/cpu/mce/dev-mcelog.c
diff options
context:
space:
mode:
authorSmita Koralahalli <Smita.KoralahalliChannabasappa@amd.com>2020-09-03 18:45:31 -0500
committerBorislav Petkov <bp@suse.de>2020-09-15 10:04:51 +0200
commitdc0592b73715c8e84ad8ebbc50c6057d5e203aac (patch)
treedbf5f771c38079e0f6bcfe8669fdd889fcd805ff /arch/x86/kernel/cpu/mce/dev-mcelog.c
parent13c877f4b48b943105ad9e13ba2c7a093fb694e8 (diff)
x86/mce/dev-mcelog: Do not update kflags on AMD systems
The mcelog utility is not commonly used on AMD systems. Therefore, errors logged only by the dev_mce_log() notifier will be missed. This may occur if the EDAC modules are not loaded, in which case it's preferable to print the error record by the default notifier. However, the mce->kflags set by dev_mce_log() notifier makes the default notifier skip over the errors assuming they are processed by dev_mce_log(). Do not update kflags in the dev_mce_log() notifier on AMD systems. Signed-off-by: Smita Koralahalli <Smita.KoralahalliChannabasappa@amd.com> Signed-off-by: Borislav Petkov <bp@suse.de> Link: https://lkml.kernel.org/r/20200903234531.162484-3-Smita.KoralahalliChannabasappa@amd.com
Diffstat (limited to 'arch/x86/kernel/cpu/mce/dev-mcelog.c')
-rw-r--r--arch/x86/kernel/cpu/mce/dev-mcelog.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/mce/dev-mcelog.c b/arch/x86/kernel/cpu/mce/dev-mcelog.c
index 03e51053592a..100fbeebdc72 100644
--- a/arch/x86/kernel/cpu/mce/dev-mcelog.c
+++ b/arch/x86/kernel/cpu/mce/dev-mcelog.c
@@ -67,7 +67,9 @@ static int dev_mce_log(struct notifier_block *nb, unsigned long val,
unlock:
mutex_unlock(&mce_chrdev_read_mutex);
- mce->kflags |= MCE_HANDLED_MCELOG;
+ if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD)
+ mce->kflags |= MCE_HANDLED_MCELOG;
+
return NOTIFY_OK;
}