aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/crash.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/crash.c')
-rw-r--r--arch/x86/kernel/crash.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c
index ed2f0f9dc894..75c468cc7e59 100644
--- a/arch/x86/kernel/crash.c
+++ b/arch/x86/kernel/crash.c
@@ -122,10 +122,17 @@ static void nmi_shootdown_cpus(void)
122 } 122 }
123 123
124 /* Leave the nmi callback set */ 124 /* Leave the nmi callback set */
125}
126
127static void kdump_nmi_shootdown_cpus(void)
128{
129 nmi_shootdown_cpus();
130
125 disable_local_APIC(); 131 disable_local_APIC();
126} 132}
133
127#else 134#else
128static void nmi_shootdown_cpus(void) 135static void kdump_nmi_shootdown_cpus(void)
129{ 136{
130 /* There are no cpus to shootdown */ 137 /* There are no cpus to shootdown */
131} 138}
@@ -144,7 +151,7 @@ void native_machine_crash_shutdown(struct pt_regs *regs)
144 /* The kernel is broken so disable interrupts */ 151 /* The kernel is broken so disable interrupts */
145 local_irq_disable(); 152 local_irq_disable();
146 153
147 nmi_shootdown_cpus(); 154 kdump_nmi_shootdown_cpus();
148 lapic_shutdown(); 155 lapic_shutdown();
149#if defined(CONFIG_X86_IO_APIC) 156#if defined(CONFIG_X86_IO_APIC)
150 disable_IO_APIC(); 157 disable_IO_APIC();