diff options
author | Andy Lutomirski <luto@amacapital.net> | 2014-11-19 17:59:41 -0800 |
---|---|---|
committer | Andy Lutomirski <luto@amacapital.net> | 2015-01-02 10:22:46 -0800 |
commit | bced35b65aefe53a6f77a9ed0ce1aea86e9d65a2 (patch) | |
tree | 9a07fcff24c833c92146cfccfa4f7ab580913518 /arch/x86/include | |
parent | 83653c16da91112236292871b820cb8b367220e3 (diff) | |
download | linux-bced35b65aefe53a6f77a9ed0ce1aea86e9d65a2.tar.bz2 |
x86, traps: Add ist_begin_non_atomic and ist_end_non_atomic
In some IST handlers, if the interrupt came from user mode,
we can safely enable preemption. Add helpers to do it safely.
This is intended to be used my the memory failure code in
do_machine_check.
Acked-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Andy Lutomirski <luto@amacapital.net>
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/traps.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/include/asm/traps.h b/arch/x86/include/asm/traps.h index 3cf525ec762d..4e49d7dff78e 100644 --- a/arch/x86/include/asm/traps.h +++ b/arch/x86/include/asm/traps.h @@ -113,6 +113,8 @@ asmlinkage void mce_threshold_interrupt(void); extern enum ctx_state ist_enter(struct pt_regs *regs); extern void ist_exit(struct pt_regs *regs, enum ctx_state prev_state); +extern void ist_begin_non_atomic(struct pt_regs *regs); +extern void ist_end_non_atomic(void); /* Interrupts/Exceptions */ enum { |