]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/x86/kernel/crash.c
[MTD][MTDPART] Fix a division by zero bug
[linux-2.6-omap-h63xx.git] / arch / x86 / kernel / crash.c
index af0253f94a9a4f68a03d55a186933c1e28e19918..2685538179097a1e8e073ebf07cd49e898ef4f6e 100644 (file)
 #include <asm/nmi.h>
 #include <asm/hw_irq.h>
 #include <asm/apic.h>
+#include <asm/hpet.h>
 #include <linux/kdebug.h>
 #include <asm/smp.h>
+#include <asm/reboot.h>
 
-#ifdef X86_32
 #include <mach_ipi.h>
-#else
-#include <asm/mach_apic.h>
-#endif
 
 /* This keeps a track of which one is crashing cpu. */
 static int crashing_cpu;
@@ -41,7 +39,7 @@ static int crash_nmi_callback(struct notifier_block *self,
                        unsigned long val, void *data)
 {
        struct pt_regs *regs;
-#ifdef X86_32
+#ifdef CONFIG_X86_32
        struct pt_regs fixed_regs;
 #endif
        int cpu;
@@ -60,7 +58,7 @@ static int crash_nmi_callback(struct notifier_block *self,
                return NOTIFY_STOP;
        local_irq_disable();
 
-#ifdef X86_32
+#ifdef CONFIG_X86_32
        if (!user_mode_vm(regs)) {
                crash_fixup_ss_esp(&fixed_regs, regs);
                regs = &fixed_regs;
@@ -120,7 +118,7 @@ static void nmi_shootdown_cpus(void)
 }
 #endif
 
-void machine_crash_shutdown(struct pt_regs *regs)
+void native_machine_crash_shutdown(struct pt_regs *regs)
 {
        /* This function is only called after the system
         * has panicked or is otherwise in a critical state.
@@ -139,6 +137,9 @@ void machine_crash_shutdown(struct pt_regs *regs)
        lapic_shutdown();
 #if defined(CONFIG_X86_IO_APIC)
        disable_IO_APIC();
+#endif
+#ifdef CONFIG_HPET_TIMER
+       hpet_disable();
 #endif
        crash_save_cpu(regs, safe_smp_processor_id());
 }