ARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 10 Apr 2012 11:37:42 +0000 (12:37 +0100)
committerVarun Wadekar <vwadekar@nvidia.com>
Wed, 18 Apr 2012 15:06:34 +0000 (20:06 +0530)
commitfc62800fbf09038a7d6429199a886fd9d86db977
tree7858b610f3c7386b379c0697534038ae30b882ae
parenteca7c084775e385d2ec3b37c72156532db92a944
ARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus

During booting of cpu1, there is a short window where cpu1
is online, but not active where cpu1 is occupied by waiting
to become active. If cpu0 then decides to schedule something
on cpu1 and wait for it to complete, before cpu0 has set
cpu1 active, we have a deadlock.

Typically it's this CPU frequency transition that happens at
this time, so let's just not wait for it to happen, it will
happen whenever the CPU eventually comes online instead.

Cc: Peter Zijlstra <peterz@infradead.org>
Cc: stable@kernel.org
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-by: Rickard Andersson <rickard.andersson@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/smp_twd.c