diff options
author | Ivan Kokshaysky <ink@jurassic.park.msu.ru> | 2011-01-12 17:02:24 -0500 |
---|---|---|
committer | Matt Turner <mattst88@monolith.freenet-rz.de> | 2011-01-16 23:42:16 -0500 |
commit | f5de6ecc84b58ba0f394365eafc8681af7a4f73d (patch) | |
tree | abd6b8de874459daafaabac5267eafc35e631050 /arch/alpha | |
parent | e2609f6aa2dce5d960ea1fe32f57524c315dede5 (diff) |
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')
-rw-r--r-- | arch/alpha/kernel/irq.c | 5 |
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) | |||
160 | return; | 160 | return; |
161 | } | 161 | } |
162 | 162 | ||
163 | irq_enter(); | ||
164 | /* | 163 | /* |
165 | * handle_irq() must be called with IPL_MAX. Note that we do not | 164 | * From here we must proceed with IPL_MAX. Note that we do not |
166 | * explicitly enable interrupts afterwards - some MILO PALcode | 165 | * explicitly enable interrupts afterwards - some MILO PALcode |
167 | * (namely LX164 one) seems to have severe problems with RTI | 166 | * (namely LX164 one) seems to have severe problems with RTI |
168 | * at IPL 0. | 167 | * at IPL 0. |
169 | */ | 168 | */ |
170 | local_irq_disable(); | 169 | local_irq_disable(); |
170 | irq_enter(); | ||
171 | generic_handle_irq_desc(irq, desc); | 171 | generic_handle_irq_desc(irq, desc); |
172 | irq_exit(); | 172 | irq_exit(); |
173 | } | 173 | } |
174 | |||