]> git.baikalelectronics.ru Git - kernel.git/commit
sh: Conditionally re-enable IRQs in fault path.
authorStuart Menefy <stuart.menefy@st.com>
Wed, 2 Jul 2008 08:51:23 +0000 (17:51 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Mon, 28 Jul 2008 09:10:33 +0000 (18:10 +0900)
commit2bf4bf017ac173dfb76d8814ebd50cdd8df515e3
tree5288184d2d8535c826c8b3c33d79b2529c83542b
parent77ecb13c240cac1a8227283fc096ec742625950b
sh: Conditionally re-enable IRQs in fault path.

The current kernel behaviour is to reenable interrupts unconditionally
when taking a page fault. This patch changes this to only enable them
if interrupts were previously enabled.

It also fixes a problem seen with this fix in place: the kernel previously
flushed the vsyscall page when handling a signal, which is not only
unncessary, but caused a possible sleep with interrupts disabled.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/signal_32.c
arch/sh/mm/fault_32.c