]> git.baikalelectronics.ru Git - kernel.git/commit
x86/entry/64: Refactor IRQ stacks and make them NMI-safe
authorAndy Lutomirski <luto@kernel.org>
Tue, 11 Jul 2017 15:33:38 +0000 (10:33 -0500)
committerIngo Molnar <mingo@kernel.org>
Tue, 18 Jul 2017 08:56:22 +0000 (10:56 +0200)
commit55df71c0de0b3ebeb6e56f1edbdbca76534236c9
treeb8e2bb366529b5eb91c54cbd15bf437c8434dd0a
parent2a0dfbf5b9f18c2a1d55550c940e597b393a6b5a
x86/entry/64: Refactor IRQ stacks and make them NMI-safe

This will allow IRQ stacks to nest inside NMIs or similar entries
that can happen during IRQ stack setup or teardown.

The new macros won't work correctly if they're invoked with IRQs on.
Add a check under CONFIG_DEBUG_ENTRY to detect that.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
[ Use %r10 instead of %r11 in xen_do_hypervisor_callback to make objtool
  and ORC unwinder's lives a little easier. ]
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: live-patching@vger.kernel.org
Link: http://lkml.kernel.org/r/b0b2ff5fb97d2da2e1d7e1f380190c92545c8bb5.1499786555.git.jpoimboe@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/Kconfig.debug
arch/x86/entry/entry_64.S
arch/x86/kernel/process_64.c