From c076aef701e33ed2ad814a7c48eb666af03abf58 Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Tue, 26 Jul 2011 20:14:44 +1000 Subject: [PATCH] Unless I'm very much missing something these tests are intended to check if bit zero is set, rather than checking if msk is entirely zero (in which case the logic would be very confusing. I haven't actually observed any runtime issues so this may be a misreading of the code on my part. Signed-off-by: Mark Brown Cc: Thomas Gleixner Signed-off-by: Andrew Morton --- kernel/irq/generic-chip.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/irq/generic-chip.c b/kernel/irq/generic-chip.c index 3a2cab407b93..e38544dddb18 100644 --- a/kernel/irq/generic-chip.c +++ b/kernel/irq/generic-chip.c @@ -246,7 +246,7 @@ void irq_setup_generic_chip(struct irq_chip_generic *gc, u32 msk, gc->mask_cache = irq_reg_readl(gc->reg_base + ct->regs.mask); for (i = gc->irq_base; msk; msk >>= 1, i++) { - if (!msk & 0x01) + if (!(msk & 0x01)) continue; if (flags & IRQ_GC_INIT_NESTED_LOCK) @@ -301,7 +301,7 @@ void irq_remove_generic_chip(struct irq_chip_generic *gc, u32 msk, raw_spin_unlock(&gc_lock); for (; msk; msk >>= 1, i++) { - if (!msk & 0x01) + if (!(msk & 0x01)) continue; /* Remove handler first. That will mask the irq line */ -- 2.39.5