x86: Remove die_nmi()
authorJan Beulich <JBeulich@novell.com>
Thu, 17 Feb 2011 15:51:40 +0000 (15:51 +0000)
committerIngo Molnar <mingo@elte.hu>
Fri, 18 Feb 2011 07:54:05 +0000 (08:54 +0100)
With no caller left, the function and the DIE_NMIWATCHDOG
enumerator can both go away.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Don Zickus <dzickus@redhat.com>
LKML-Reference: <4D5D521C0200007800032702@vpn.id2.novell.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/include/asm/kdebug.h
arch/x86/include/asm/nmi.h
arch/x86/kernel/dumpstack.c
arch/x86/kernel/kgdb.c

index ca242d35e8733ee8c23a7a960d28c933b5d055f4..518bbbb9ee59135bd6e3213dc3550803c9df2b47 100644 (file)
@@ -13,7 +13,6 @@ enum die_val {
        DIE_PANIC,
        DIE_NMI,
        DIE_DIE,
-       DIE_NMIWATCHDOG,
        DIE_KERNELDEBUG,
        DIE_TRAP,
        DIE_GPF,
index c76f5b92b840f8042e43d4f614ec2170b0d7a933..07f46016d3ff30cb7dc86ba202cabaeab2ecc3e1 100644 (file)
@@ -7,7 +7,6 @@
 
 #ifdef CONFIG_X86_LOCAL_APIC
 
-extern void die_nmi(char *str, struct pt_regs *regs, int do_panic);
 extern int avail_to_resrv_perfctr_nmi_bit(unsigned int);
 extern int reserve_perfctr_nmi(unsigned int);
 extern void release_perfctr_nmi(unsigned int);
index df20723a6a1b3b0ced782412eef7c4b72f3c1e36..220a1c11cfde4280e22ccf6b691e1c2b4c8ea64c 100644 (file)
@@ -320,31 +320,6 @@ void die(const char *str, struct pt_regs *regs, long err)
        oops_end(flags, regs, sig);
 }
 
-void notrace __kprobes
-die_nmi(char *str, struct pt_regs *regs, int do_panic)
-{
-       unsigned long flags;
-
-       if (notify_die(DIE_NMIWATCHDOG, str, regs, 0, 2, SIGINT) == NOTIFY_STOP)
-               return;
-
-       /*
-        * We are in trouble anyway, lets at least try
-        * to get a message out.
-        */
-       flags = oops_begin();
-       printk(KERN_EMERG "%s", str);
-       printk(" on CPU%d, ip %08lx, registers:\n",
-               smp_processor_id(), regs->ip);
-       show_registers(regs);
-       oops_end(flags, regs, 0);
-       if (do_panic || panic_on_oops)
-               panic("Non maskable interrupt");
-       nmi_exit();
-       local_irq_enable();
-       do_exit(SIGBUS);
-}
-
 static int __init oops_setup(char *s)
 {
        if (!s)
index a4130005028ac870dd50e296d98701842824e065..7c64c420a9f688a9add0b75235b01ea6119b3605 100644 (file)
@@ -533,15 +533,6 @@ static int __kgdb_notify(struct die_args *args, unsigned long cmd)
                }
                return NOTIFY_DONE;
 
-       case DIE_NMIWATCHDOG:
-               if (atomic_read(&kgdb_active) != -1) {
-                       /* KGDB CPU roundup: */
-                       kgdb_nmicallback(raw_smp_processor_id(), regs);
-                       return NOTIFY_STOP;
-               }
-               /* Enter debugger: */
-               break;
-
        case DIE_DEBUG:
                if (atomic_read(&kgdb_cpu_doing_single_step) != -1) {
                        if (user_mode(regs))