On Wed, 12 Mar 2014, Russell King - ARM Linux wrote: > On Wed, Mar 12, 2014 at 11:38:24AM +0100, Thomas Gleixner wrote: > > If the interrupt chip has this behaviour then handle_level_irq as the > > flow handler is the wrong thing to start with because it always acks > > before calling the handler. > > This sounds like the situation with the Dove PMC irqchip too, except > that it has the additional complication that "acking" any interrupt is > potentially distructive to other pending interrupts, so should be done > as infrequently as possible.
Right. I was wondering about that, but then reminded myself that the "ack" on that chip is total clusterf*ck. > > +void unmask_threaded_irq(struct irq_desc *desc) > > +{ > > + struct irq_chip *chip = desc->irq_data.chip; > > + > > + if (chip->flags & IRQCHIP_EOI_THREADED) > > + chip->irq_eoi(&desc->irq_data); > > + > > + if (chip->irq_unmask) { > > + desc->irq_data.chip->irq_unmask(&desc->irq_data); > > ITYM: > chip->irq_unmask(&desc->irq_data); True. 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/