On Thu, Jun 30, 2011 at 12:51 PM, Felipe Balbi <[email protected]> wrote:
> ... and use threaded IRQ infrastructure. Later
> patches will come dropping both workqueues and
> setting the nested thread flag.

...

>  static irqreturn_t handle_twl4030_pih(int irq, void *devid)
>  {
> -       /* Acknowledge, clear *AND* mask the interrupt... */
> -       disable_irq_nosync(irq);
> -       complete(devid);

...

> -       status = request_irq(irq_num, handle_twl4030_pih, IRQF_DISABLED,
> -                               "TWL4030-PIH", &irq_event);
> +       status = request_threaded_irq(irq_num, NULL, handle_twl4030_pih,
> +                       IRQF_DISABLED, "TWL4030-PIH", NULL);

FTR, in this reorganization this code was dropped
disable_irq_nosync(irq), which means the irq's would never be cleared.
IRQF_ONESHOT should have been on the flags.

But Neil Brown already found the issue and fixed it :)
http://article.gmane.org/gmane.linux.kernel/1220705

-- 
Felipe Contreras
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to