[PATCH] ARM: smp: call platform's cpu_die in ipi_cpu_stop
Kevin Bracey
kevin at bracey.fi
Sat Apr 6 08:37:04 EDT 2013
When hotplugging out, both cpu_kill and cpu_die have always been called.
But when smp_send_stop was used in machine_shutdown or panic, only
cpu_kill was called.
This causes problems for co-ordination between cpu_kill and cpu_die, as
attempted by shmobile. So add cpu_die call to ipi_cpu_stop, to ensure
that cpu_kill and cpu_die calls always occur together.
Signed-off-by: Kevin Bracey <kevin at bracey.fi>
---
arch/arm/kernel/smp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index 84f4cbf..6692bba 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -572,6 +572,9 @@ static void ipi_cpu_stop(unsigned int cpu)
local_fiq_disable();
local_irq_disable();
+ if (smp_ops.cpu_die)
+ smp_ops.cpu_die(cpu);
+
while (1)
cpu_relax();
}
--
1.8.2.445.gfcda34b
More information about the linux-arm-kernel
mailing list