From: Andrew Morton Date: Tue, 26 Sep 2006 08:52:36 +0000 (+0200) Subject: [PATCH] wire up oops_enter()/oops_exit() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=abf0f10948b316b577851ef21c728341f1046552;p=openwrt%2Fstaging%2Fblogic.git [PATCH] wire up oops_enter()/oops_exit() Implement pause_on_oops() on x86_64. AK: I redid the patch to do the oops_enter/exit in the existing oops_begin()/end(). This makes it much shorter. Signed-off-by: Andrew Morton Signed-off-by: Andi Kleen --- 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) int cpu = safe_smp_processor_id(); unsigned long flags; + oops_enter(); + /* racy, but better than risking deadlock. */ local_irq_save(flags); if (!spin_trylock(&die_lock)) { @@ -589,6 +591,7 @@ void __kprobes oops_end(unsigned long flags) spin_unlock_irqrestore(&die_lock, flags); if (panic_on_oops) panic("Fatal exception"); + oops_exit(); } void __kprobes __die(const char * str, struct pt_regs * regs, long err)