Message ID | 1415595784-5646-3-git-send-email-j-keerthy@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 11/09/2014 11:03 PM, Keerthy wrote: > Correct returning IRQ_HANDLED unconditionally in the irq handler. > Return IRQ_NONE for some interrupt which we do not expect to be > handled in this handler. This prevents kernel stalling with back > to back spurious interrupts. > > Signed-off-by: Keerthy <j-keerthy@ti.com> Consider providing an appropriate fixes comment here as well? > --- > drivers/bus/omap_l3_noc.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/bus/omap_l3_noc.c b/drivers/bus/omap_l3_noc.c > index b5eac29..17d8659 100644 > --- a/drivers/bus/omap_l3_noc.c > +++ b/drivers/bus/omap_l3_noc.c > @@ -222,10 +222,14 @@ static irqreturn_t l3_interrupt_handler(int irq, void *_l3) > } > > /* Error found so break the for loop */ > - break; > + return IRQ_HANDLED; > } > } > - return IRQ_HANDLED; > + > + dev_err(l3->dev, "L3 %s IRQ not handled!!\n", > + inttype ? "debug" : "application"); > + > + return IRQ_NONE; > } > > static const struct of_device_id l3_noc_match[] = { >
diff --git a/drivers/bus/omap_l3_noc.c b/drivers/bus/omap_l3_noc.c index b5eac29..17d8659 100644 --- a/drivers/bus/omap_l3_noc.c +++ b/drivers/bus/omap_l3_noc.c @@ -222,10 +222,14 @@ static irqreturn_t l3_interrupt_handler(int irq, void *_l3) } /* Error found so break the for loop */ - break; + return IRQ_HANDLED; } } - return IRQ_HANDLED; + + dev_err(l3->dev, "L3 %s IRQ not handled!!\n", + inttype ? "debug" : "application"); + + return IRQ_NONE; } static const struct of_device_id l3_noc_match[] = {
Correct returning IRQ_HANDLED unconditionally in the irq handler. Return IRQ_NONE for some interrupt which we do not expect to be handled in this handler. This prevents kernel stalling with back to back spurious interrupts. Signed-off-by: Keerthy <j-keerthy@ti.com> --- drivers/bus/omap_l3_noc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)