diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2021-09-08 15:29:24 +0200 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-09-13 18:23:00 +0200 |
commit | 0c2e62ba04cd0b7194b380bae4fc35c45bb2e46e (patch) | |
tree | 30b13fa2739ae10240113da2c88cda4f68c43027 /arch | |
parent | x86/fpu: Use EX_TYPE_FAULT_MCE_SAFE for exception fixups (diff) | |
download | linux-dev-0c2e62ba04cd0b7194b380bae4fc35c45bb2e46e.tar.xz linux-dev-0c2e62ba04cd0b7194b380bae4fc35c45bb2e46e.zip |
x86/extable: Remove EX_TYPE_FAULT from MCE safe fixups
Now that the MC safe copy and FPU have been converted to use the MCE safe
fixup types remove EX_TYPE_FAULT from the list of types which MCE considers
to be safe to be recovered in kernel.
This removes the SGX exception handling of ENCLS from the #MC safe
handling, but according to the SGX wizards the current SGX implementations
cannot survive #MC on ENCLS:
https://lore.kernel.org/r/YS+upEmTfpZub3s9@google.com
The code relies on the trap number being stored if ENCLS raised an
exception. That's still working, but it does no longer trick the MCE code
into assuming that #MC is handled correctly for ENCLS.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20210908132525.445255957@linutronix.de
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/cpu/mce/severity.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/mce/severity.c b/arch/x86/kernel/cpu/mce/severity.c index d9b77a74f8d2..f60bbaff9f65 100644 --- a/arch/x86/kernel/cpu/mce/severity.c +++ b/arch/x86/kernel/cpu/mce/severity.c @@ -277,7 +277,6 @@ static int error_context(struct mce *m, struct pt_regs *regs) return IN_KERNEL; m->kflags |= MCE_IN_KERNEL_COPYIN; fallthrough; - case EX_TYPE_FAULT: case EX_TYPE_FAULT_MCE_SAFE: case EX_TYPE_DEFAULT_MCE_SAFE: m->kflags |= MCE_IN_KERNEL_RECOV; |