powerpc: stop_this_cpu: remove the cpu from the online map.
authorValentine Barshak <vbarshak@ru.mvista.com>
Wed, 25 Nov 2009 11:48:52 +0000 (11:48 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 9 Dec 2009 06:09:34 +0000 (17:09 +1100)
Remove the CPU from the online map to prevent smp_call_function
from sending messages to a stopped CPU.

Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/smp.c

index 9b86a74d281504cf255ae9a2f2b3e7b5009076fb..97196eefef3edccba66bfd7398b9d75962e1d5c4 100644 (file)
@@ -218,6 +218,9 @@ void crash_send_ipi(void (*crash_ipi_callback)(struct pt_regs *))
 
 static void stop_this_cpu(void *dummy)
 {
+       /* Remove this CPU */
+       set_cpu_online(smp_processor_id(), false);
+
        local_irq_disable();
        while (1)
                ;