]> Pileus Git - ~andy/linux/blobdiff - arch/powerpc/kernel/traps.c
ath6kl: fix fw capability parsing
[~andy/linux] / arch / powerpc / kernel / traps.c
index c091527efd89fa5a38688c055ba5ddcfee99e193..a750409ccc4e25b2743456bc3b492166b9f8c1c7 100644 (file)
@@ -57,6 +57,7 @@
 #include <asm/kexec.h>
 #include <asm/ppc-opcode.h>
 #include <asm/rio.h>
+#include <asm/fadump.h>
 
 #if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC)
 int (*__debugger)(struct pt_regs *regs) __read_mostly;
@@ -145,6 +146,8 @@ static void __kprobes oops_end(unsigned long flags, struct pt_regs *regs,
                arch_spin_unlock(&die_lock);
        raw_local_irq_restore(flags);
 
+       crash_fadump(regs, "die oops");
+
        /*
         * A system reset (0x100) is a request to dump, so we always send
         * it through the crashdump code.
@@ -244,6 +247,9 @@ void _exception(int signr, struct pt_regs *regs, int code, unsigned long addr)
                                   addr, regs->nip, regs->link, code);
        }
 
+       if (!arch_irq_disabled_regs(regs))
+               local_irq_enable();
+
        memset(&info, 0, sizeof(info));
        info.si_signo = signr;
        info.si_code = code;