]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - kernel/irq/handle.c
MMC: OMAP: New release dma and abort xfer functions
[linux-2.6-omap-h63xx.git] / kernel / irq / handle.c
index 32e1ab1477d1a975e6f19713eca1d41277da7f80..dc335ad27525f0019d475124322779d6c6ed5f09 100644 (file)
@@ -22,7 +22,6 @@
  * handle_bad_irq - handle spurious and unhandled irqs
  * @irq:       the interrupt number
  * @desc:      description of the interrupt
- * @regs:      pointer to a register structure
  *
  * Handles spurious and unhandled IRQ's. It also prints a debugmessage.
  */
@@ -179,9 +178,11 @@ fastcall unsigned int __do_IRQ(unsigned int irq)
                 */
                if (desc->chip->ack)
                        desc->chip->ack(irq);
-               action_ret = handle_IRQ_event(irq, desc->action);
-               if (!noirqdebug)
-                       note_interrupt(irq, desc, action_ret);
+               if (likely(!(desc->status & IRQ_DISABLED))) {
+                       action_ret = handle_IRQ_event(irq, desc->action);
+                       if (!noirqdebug)
+                               note_interrupt(irq, desc, action_ret);
+               }
                desc->chip->end(irq);
                return 1;
        }