ARM: SMP implementations are not supposed to return from smp_ops.cpu_die()
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 11 Jan 2014 11:25:37 +0000 (11:25 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 21 Jan 2014 16:42:14 +0000 (16:42 +0000)
Although we allow recovery in this case, this is not supposed to be
the normal path for hotplugging a CPU back in.  This path only exists
to serve those rare platforms where it's not possible to power down
the CPU or reset the CPU.  This patch causes the kernel to print a
message when a platform uses this path.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/smp.c

index 8c61325b8bfce744fc8b7702317ecb1d365cb915..b7b4c86e338b0264919152caee8bec654e2b7757 100644 (file)
@@ -293,6 +293,9 @@ void __ref cpu_die(void)
        if (smp_ops.cpu_die)
                smp_ops.cpu_die(cpu);
 
+       pr_warn("CPU%u: smp_ops.cpu_die() returned, trying to resuscitate\n",
+               cpu);
+
        /*
         * Do not return to the idle loop - jump back to the secondary
         * cpu initialisation.  There's some initialisation which needs