diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-06-20 16:46:01 +0100 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2012-04-05 18:18:13 -0700 |
commit | 3c760aab7270140ed77f4fc08dbbd48c357a824e (patch) | |
tree | a35c83fb43f7c1908829ecebdafa232999b09cfb | |
parent | 209209a303742d6312f66896b4351dd97e48e24c (diff) |
ARM: SMP: wait for CPU to be marked active
When we bring a CPU online, we should wait for it to become active
before entering the idle thread, so we know that the scheduler and
thread migration is going to work.
Change-Id: I0fa128768f575ddd0a5d976be66869dbd88f355e
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Reviewed-on: http://git-master/r/87226
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
-rw-r--r-- | arch/arm/kernel/smp.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c index 14d06f50d168..1d0fa9cde229 100644 --- a/arch/arm/kernel/smp.c +++ b/arch/arm/kernel/smp.c @@ -314,6 +314,8 @@ asmlinkage void __cpuinit secondary_start_kernel(void) * before we continue. */ set_cpu_online(cpu, true); + while (!cpu_active(cpu)) + cpu_relax(); /* * Setup the percpu timer for this CPU. |