diff options
author | Al Viro <viro@ftp.linux.org.uk> | 2006-10-07 14:17:31 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-07 10:51:14 -0700 |
commit | 8774cb815f2492a95b90a927f93a2de555753b32 (patch) | |
tree | 40725c7a7b0618811b2f09753a4e4cd88c1db3e2 /arch/alpha/kernel/irq.c | |
parent | 2850bc273776cbb1b510c5828e9e456dffb50a32 (diff) | |
download | lwn-8774cb815f2492a95b90a927f93a2de555753b32.tar.gz lwn-8774cb815f2492a95b90a927f93a2de555753b32.zip |
[PATCH] minimal alpha pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/alpha/kernel/irq.c')
-rw-r--r-- | arch/alpha/kernel/irq.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/alpha/kernel/irq.c b/arch/alpha/kernel/irq.c index 729c475d2269..dba4e70926f5 100644 --- a/arch/alpha/kernel/irq.c +++ b/arch/alpha/kernel/irq.c @@ -129,6 +129,7 @@ unlock: void handle_irq(int irq, struct pt_regs * regs) { + struct pt_regs *old_regs; /* * We ack quickly, we don't want the irq controller * thinking we're snobs just because some other CPU has @@ -149,6 +150,7 @@ handle_irq(int irq, struct pt_regs * regs) return; } + old_regs = set_irq_regs(regs); irq_enter(); /* * __do_IRQ() must be called with IPL_MAX. Note that we do not @@ -157,6 +159,7 @@ handle_irq(int irq, struct pt_regs * regs) * at IPL 0. */ local_irq_disable(); - __do_IRQ(irq, regs); + __do_IRQ(irq); irq_exit(); + set_irq_regs(old_regs); } |