From: Eric W. Biederman It is dangerous to shutdown the apics in machine_crash_shutdown. With my previous patch to initialize apics in init_IRQ we should be able to boot a kernel without this. As long as we reinitialize the APICs we don't care what state they were in during bootup. This should make machine_crash_shutdown noticeably more reliable. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton --- arch/i386/kernel/crash.c | 7 ------- 1 files changed, 7 deletions(-) diff -puN arch/i386/kernel/crash.c~i386-kexec-on-panic-dont-shutdown-the-apics arch/i386/kernel/crash.c --- devel/arch/i386/kernel/crash.c~i386-kexec-on-panic-dont-shutdown-the-apics 2005-10-11 18:29:44.000000000 -0700 +++ devel-akpm/arch/i386/kernel/crash.c 2005-10-11 18:29:44.000000000 -0700 @@ -21,7 +21,6 @@ #include #include #include -#include #include @@ -148,7 +147,6 @@ static int crash_nmi_callback(struct pt_ regs = &fixed_regs; } crash_save_this_cpu(regs, cpu); - disable_local_APIC(); atomic_dec(&waiting_for_crash_ipi); /* Assume hlt works */ halt(); @@ -188,7 +186,6 @@ static void nmi_shootdown_cpus(void) } /* Leave the nmi callback set */ - disable_local_APIC(); } #else static void nmi_shootdown_cpus(void) @@ -213,9 +210,5 @@ void machine_crash_shutdown(struct pt_re /* Make a note of crashing cpu. Will be used in NMI callback.*/ crashing_cpu = smp_processor_id(); nmi_shootdown_cpus(); - lapic_shutdown(); -#if defined(CONFIG_X86_IO_APIC) - disable_IO_APIC(); -#endif crash_save_self(regs); } _