aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86_64/kernel/traps.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86_64/kernel/traps.c')
-rw-r--r--arch/x86_64/kernel/traps.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86_64/kernel/traps.c b/arch/x86_64/kernel/traps.c
index ffc40cff1e07..34660b1e2720 100644
--- a/arch/x86_64/kernel/traps.c
+++ b/arch/x86_64/kernel/traps.c
@@ -561,6 +561,8 @@ unsigned __kprobes long oops_begin(void)
561 int cpu = safe_smp_processor_id(); 561 int cpu = safe_smp_processor_id();
562 unsigned long flags; 562 unsigned long flags;
563 563
564 oops_enter();
565
564 /* racy, but better than risking deadlock. */ 566 /* racy, but better than risking deadlock. */
565 local_irq_save(flags); 567 local_irq_save(flags);
566 if (!spin_trylock(&die_lock)) { 568 if (!spin_trylock(&die_lock)) {
@@ -589,6 +591,7 @@ void __kprobes oops_end(unsigned long flags)
589 spin_unlock_irqrestore(&die_lock, flags); 591 spin_unlock_irqrestore(&die_lock, flags);
590 if (panic_on_oops) 592 if (panic_on_oops)
591 panic("Fatal exception"); 593 panic("Fatal exception");
594 oops_exit();
592} 595}
593 596
594void __kprobes __die(const char * str, struct pt_regs * regs, long err) 597void __kprobes __die(const char * str, struct pt_regs * regs, long err)