From 80280b3fda714b83ea254485271deab3421899b4 Mon Sep 17 00:00:00 2001 From: Russell King Date: Tue, 30 Nov 2010 12:21:30 +0000 Subject: [PATCH] --- yaml --- r: 225886 b: refs/heads/master c: f36d340122ae8744e64af0a92a6f77b97542c0a4 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/kernel/smp.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index c0c3b26416c2..8260d2625738 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bbc81fd4327f9ed4480b05981e38acd48b1d184a +refs/heads/master: f36d340122ae8744e64af0a92a6f77b97542c0a4 diff --git a/trunk/arch/arm/kernel/smp.c b/trunk/arch/arm/kernel/smp.c index 8c81ff9b3732..1a1c5e2b3ef9 100644 --- a/trunk/arch/arm/kernel/smp.c +++ b/trunk/arch/arm/kernel/smp.c @@ -269,9 +269,11 @@ void __ref cpu_die(void) { unsigned int cpu = smp_processor_id(); - local_irq_disable(); idle_task_exit(); + local_irq_disable(); + mb(); + /* Tell __cpu_die() that this CPU is now safe to dispose of */ complete(&cpu_died);