]> git.hungrycats.org Git - linux/commitdiff
[PATCH] ia64: don't call note_interrupt() for per-CPU irqs
authorMartin Hicks <mort@wildopensource.com>
Wed, 11 Feb 2004 07:52:06 +0000 (23:52 -0800)
committerDavid Mosberger <davidm@tiger.hpl.hp.com>
Wed, 11 Feb 2004 07:52:06 +0000 (23:52 -0800)
The note_interrupt() code is racy for per-CPU irqs and causes severe
performance problems due to cache-line bouncing on large SMPs.  Just don't
call it for that case.

arch/ia64/kernel/irq.c

index f337fbb51b9059749b013a319ba64d529e7f65a4..61b1c97eac85e49c825aa1ce23478f6e0d0beb5c 100644 (file)
@@ -465,8 +465,6 @@ unsigned int do_IRQ(unsigned long irq, struct pt_regs *regs)
                desc->handler->ack(irq);
                action_ret = handle_IRQ_event(irq, regs, desc->action);
                desc->handler->end(irq);
-               if (!noirqdebug)
-                       note_interrupt(irq, desc, action_ret);
        } else {
                spin_lock(&desc->lock);
                desc->handler->ack(irq);