aboutsummaryrefslogtreecommitdiffstats
path: root/arch/alpha/kernel/irq.c
diff options
context:
space:
mode:
authorIvan Kokshaysky <ink@jurassic.park.msu.ru>2011-01-12 22:02:24 +0000
committerMatt Turner <mattst88@monolith.freenet-rz.de>2011-01-17 05:42:16 +0100
commitf5de6ecc84b58ba0f394365eafc8681af7a4f73d (patch)
treeabd6b8de874459daafaabac5267eafc35e631050 /arch/alpha/kernel/irq.c
parentalpha: fix breakage caused by df9ee29270 (diff)
downloadlinux-dev-f5de6ecc84b58ba0f394365eafc8681af7a4f73d.tar.xz
linux-dev-f5de6ecc84b58ba0f394365eafc8681af7a4f73d.zip
alpha: fix WARN_ON in __local_bh_enable()
Interrupts ought to be disabled _before_ irq_enter(). Signed-off-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Signed-off-by: Matt Turner <mattst88@monolith.freenet-rz.de>
Diffstat (limited to 'arch/alpha/kernel/irq.c')
-rw-r--r--arch/alpha/kernel/irq.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/alpha/kernel/irq.c b/arch/alpha/kernel/irq.c
index 5912900a42eb..9ab234f48dd8 100644
--- a/arch/alpha/kernel/irq.c
+++ b/arch/alpha/kernel/irq.c
@@ -160,15 +160,14 @@ handle_irq(int irq)
return;
}
- irq_enter();
/*
- * handle_irq() must be called with IPL_MAX. Note that we do not
+ * From here we must proceed with IPL_MAX. Note that we do not
* explicitly enable interrupts afterwards - some MILO PALcode
* (namely LX164 one) seems to have severe problems with RTI
* at IPL 0.
*/
local_irq_disable();
+ irq_enter();
generic_handle_irq_desc(irq, desc);
irq_exit();
}
-