summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-01-11 11:25:37 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2014-01-21 16:42:14 +0000
commit668bc38669f9a6d5e91846e9435b22b196cee9d1 (patch)
tree046fcce2bb5b90725e9cf35a5f69cfcf3ee33749 /arch
parent571b14375019c3a66ef70d4d4a7083f4238aca30 (diff)
downloadlinux-stable-668bc38669f9a6d5e91846e9435b22b196cee9d1.tar.gz
linux-stable-668bc38669f9a6d5e91846e9435b22b196cee9d1.tar.bz2
linux-stable-668bc38669f9a6d5e91846e9435b22b196cee9d1.zip
ARM: SMP implementations are not supposed to return from smp_ops.cpu_die()
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>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/kernel/smp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index 8c61325b8bfc..b7b4c86e338b 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -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