aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/smp.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/smp.c')
-rw-r--r--arch/powerpc/kernel/smp.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c
index 1c9956c4380..3c0fab5e1e1 100644
--- a/arch/powerpc/kernel/smp.c
+++ b/arch/powerpc/kernel/smp.c
@@ -362,14 +362,13 @@ void generic_mach_cpu_die(void)
362 unsigned int cpu; 362 unsigned int cpu;
363 363
364 local_irq_disable(); 364 local_irq_disable();
365 idle_task_exit();
365 cpu = smp_processor_id(); 366 cpu = smp_processor_id();
366 printk(KERN_DEBUG "CPU%d offline\n", cpu); 367 printk(KERN_DEBUG "CPU%d offline\n", cpu);
367 __get_cpu_var(cpu_state) = CPU_DEAD; 368 __get_cpu_var(cpu_state) = CPU_DEAD;
368 smp_wmb(); 369 smp_wmb();
369 while (__get_cpu_var(cpu_state) != CPU_UP_PREPARE) 370 while (__get_cpu_var(cpu_state) != CPU_UP_PREPARE)
370 cpu_relax(); 371 cpu_relax();
371 set_cpu_online(cpu, true);
372 local_irq_enable();
373} 372}
374#endif 373#endif
375 374