sh: Fix up UP deadlock with SMP-aware cache ops.
authorPaul Mundt <lethal@linux-sh.org>
Tue, 1 Sep 2009 12:21:36 +0000 (21:21 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 1 Sep 2009 12:21:36 +0000 (21:21 +0900)
commit6f3795788b030c3c190fa063adfe519e016cc6fd
treeee7ed849f0d616bf6c89cbee4637c4c6d2866a5a
parent983f4c514c4c9ddac1077a2c805fd16cbe3f7487
sh: Fix up UP deadlock with SMP-aware cache ops.

This builds on top of the previous reversion and implements a special
on_each_cpu() variant that simple disables preemption across the call
while leaving the interrupt state to the function itself. There were some
unintended consequences with IRQ disabling in some of these paths on UP
that ran in to a deadlock scenario with IRQs being missed.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/mm/cache.c