X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=kernel%2Firq%2Fmigration.c;h=77b7acc875c5df6755954161736b72918fff49ad;hb=8a3227268877b81096d7b7a841aaf51099ad2068;hp=4baa3bbcd25a0c516e7ae05de2eeed2dbd523814;hpb=946b92437e550d6ed80213bf54a1f383e141aede;p=~andy%2Flinux diff --git a/kernel/irq/migration.c b/kernel/irq/migration.c index 4baa3bbcd25..77b7acc875c 100644 --- a/kernel/irq/migration.c +++ b/kernel/irq/migration.c @@ -65,12 +65,11 @@ void move_native_irq(int irq) if (likely(!(desc->status & IRQ_MOVE_PENDING))) return; - if (likely(!(desc->status & IRQ_DISABLED))) - desc->chip->disable(irq); + if (unlikely(desc->status & IRQ_DISABLED)) + return; + desc->chip->mask(irq); move_masked_irq(irq); - - if (likely(!(desc->status & IRQ_DISABLED))) - desc->chip->enable(irq); + desc->chip->unmask(irq); }