genirq: Remove bogus conditional
authorThomas Gleixner <tglx@linutronix.de>
Wed, 2 Feb 2011 21:41:12 +0000 (21:41 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 19 Feb 2011 11:58:10 +0000 (12:58 +0100)
The if (chip->irq_shutdown) check will always evaluate to true, as we
fill in chip->irq_shutdown with default_shutdown in
irq_chip_set_defaults() if the chip does not provide its own function.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <20110202212551.667607458@linutronix.de>

kernel/irq/manage.c

index 33a6ee0ac68f02bd5599d1955d7911ff7ace241d..30bc8de409056527dc19bdeba6b1c5ea40830ac7 100644 (file)
@@ -1057,10 +1057,7 @@ static struct irqaction *__free_irq(unsigned int irq, void *dev_id)
        /* If this was the last handler, shut down the IRQ line: */
        if (!desc->action) {
                desc->status |= IRQ_DISABLED;
-               if (desc->irq_data.chip->irq_shutdown)
-                       desc->irq_data.chip->irq_shutdown(&desc->irq_data);
-               else
-                       desc->irq_data.chip->irq_disable(&desc->irq_data);
+               desc->irq_data.chip->irq_shutdown(&desc->irq_data);
        }
 
 #ifdef CONFIG_SMP