summaryrefslogtreecommitdiffstats
path: root/arch/x86/include
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@amacapital.net>2014-11-19 17:59:41 -0800
committerAndy Lutomirski <luto@amacapital.net>2015-01-02 10:22:46 -0800
commitbced35b65aefe53a6f77a9ed0ce1aea86e9d65a2 (patch)
tree9a07fcff24c833c92146cfccfa4f7ab580913518 /arch/x86/include
parent83653c16da91112236292871b820cb8b367220e3 (diff)
downloadlinux-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.h2
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 {