diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2020-07-08 21:28:05 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2020-07-09 11:18:29 +0200 |
commit | bce9b042ec73e8662b8119d4ca47e7c78b20d0bf (patch) | |
tree | 594c65f3873aeecc627645fc03ce635d65577f17 | |
parent | x86/entry/32: Fix XEN_PV build dependency (diff) | |
download | linux-bce9b042ec73e8662b8119d4ca47e7c78b20d0bf.tar.xz linux-bce9b042ec73e8662b8119d4ca47e7c78b20d0bf.zip |
x86/traps: Disable interrupts in exc_aligment_check()
exc_alignment_check() fails to disable interrupts before returning to the
entry code.
Fixes: ca4c6a9858c2 ("x86/traps: Make interrupt enable/disable symmetric in C code")
Reported-by: syzbot+0889df9502bc0f112b31@syzkaller.appspotmail.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Andy Lutomirski <luto@kernel.org>
Link: https://lkml.kernel.org/r/20200708192934.076519438@linutronix.de
-rw-r--r-- | arch/x86/kernel/traps.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c index 6ed8cc5fbe8f..4f3a509e5547 100644 --- a/arch/x86/kernel/traps.c +++ b/arch/x86/kernel/traps.c @@ -299,6 +299,8 @@ DEFINE_IDTENTRY_ERRORCODE(exc_alignment_check) do_trap(X86_TRAP_AC, SIGBUS, "alignment check", regs, error_code, BUS_ADRALN, NULL); + + local_irq_disable(); } #ifdef CONFIG_VMAP_STACK |