powerpc/smp: Fix generic_mach_cpu_die()
This is used by some "soft" hotplug implementations. I needs to call idle_task_exit() when the CPU is going away, and we remove the now no-longer needed set_cpu_online() and local_irq_enable() which are handled by the return to start_secondary Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
fa3f82c8bb
commit
4fcb8833af
|
@ -362,14 +362,13 @@ void generic_mach_cpu_die(void)
|
|||
unsigned int cpu;
|
||||
|
||||
local_irq_disable();
|
||||
idle_task_exit();
|
||||
cpu = smp_processor_id();
|
||||
printk(KERN_DEBUG "CPU%d offline\n", cpu);
|
||||
__get_cpu_var(cpu_state) = CPU_DEAD;
|
||||
smp_wmb();
|
||||
while (__get_cpu_var(cpu_state) != CPU_UP_PREPARE)
|
||||
cpu_relax();
|
||||
set_cpu_online(cpu, true);
|
||||
local_irq_enable();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue