On Thu, 28 Aug 2014, Florian Fainelli wrote: > +static void bcm7120_l2_intc_irq_handle(unsigned int irq, struct irq_desc > *desc) > +{ > + struct bcm7120_l2_intc_data *b = irq_desc_get_handler_data(desc); > + struct irq_chip *chip = irq_desc_get_chip(desc); > + struct irq_chip_generic *gc = irq_get_domain_generic_chip(b->domain, 0); > + u32 status; > + > + chained_irq_enter(chip, desc); > + > + irq_gc_lock(gc); > + status = __raw_readl(b->base + IRQSTAT); > + irq_gc_unlock(gc);
Why do you need locking around the status read out? > + for (irq = 0; irq < num_parent_irqs; irq++) { > + ret = bcm7120_l2_intc_init_one(dn, data, irq, map_mask); > + if (ret) > + continue; What's the exact purpose of this "if (ret)" construct? Thanks, tglx -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/