summaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/irq.c
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-08-30 19:37:17 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2006-08-31 01:05:16 +0200
commit266f0566761cf88906d634727b3d9fc2556f5cbd (patch)
treea8f664a8b02e9363be200f80e0567dc2c6de74e3 /arch/i386/kernel/irq.c
parent[PATCH] x86_64: Remove __KERNEL__ ifdef around _syscall*() (diff)
downloadlinux-266f0566761cf88906d634727b3d9fc2556f5cbd.tar.xz
linux-266f0566761cf88906d634727b3d9fc2556f5cbd.zip
[PATCH] i386: Fix stack switching in do_IRQ
There was a bogus hunk from the genirq merge that essentially broke stack switching for hard interrupts. Remove it since it isn't needed. Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to '')
-rw-r--r--arch/i386/kernel/irq.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/arch/i386/kernel/irq.c b/arch/i386/kernel/irq.c
index 6cb529f60dcc..5fe547cd8f9f 100644
--- a/arch/i386/kernel/irq.c
+++ b/arch/i386/kernel/irq.c
@@ -82,10 +82,6 @@ fastcall unsigned int do_IRQ(struct pt_regs *regs)
}
#endif
- if (!irq_desc[irq].handle_irq) {
- __do_IRQ(irq, regs);
- goto out_exit;
- }
#ifdef CONFIG_4KSTACKS
curctx = (union irq_ctx *) current_thread_info();
@@ -125,7 +121,6 @@ fastcall unsigned int do_IRQ(struct pt_regs *regs)
#endif
__do_IRQ(irq, regs);
-out_exit:
irq_exit();
return 1;