ARM: fix rcu stalls on SMP platforms
authorRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 19 Jan 2012 15:20:58 +0000 (15:20 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 19 Jan 2012 17:26:30 +0000 (17:26 +0000)
commit7deabca0acfe02b8e18f59a4c95676012f49a304
tree56d9d696cb26de9696cfe591cab9b80d54608cef
parent94ae0275d7d6cae84b3af11f9e3d88f529528ac7
ARM: fix rcu stalls on SMP platforms

We can stall RCU processing on SMP platforms if a CPU sits in its idle
loop for a long time.  This happens because we don't call irq_enter()
and irq_exit() around generic_smp_call_function_interrupt() and
friends.  Add the necessary calls, and remove the one from within
ipi_timer(), so that they're all in a common place.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/smp.c