Re: [PATCH -mm] misroute-irq: Don't call desc->chip->end because of edge interrupts

Steven Rostedt
2006-06-06T10:46:57Z

On Mon, 2006-06-05 at 21:20 -0700, Andrew Morton wrote:
> On Mon, 05 Jun 2006 23:33:50 -0400
> Steven Rostedt <rostedt@goodmis.org> wrote:
>
> >
> > Hit the following BUG with irqpoll. The below patch fixes it.
> >
>
> Call me a cynic, but
>
> > + if (work && disc->chip && desc->chip->end)
>
> that doesn't look super-tested to me.

No, it hasn't been refreshed! Damn quilt!

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>

Index: linux-2.6.17-rc5-mm3/kernel/irq/spurious.c
===================================================================
--- linux-2.6.17-rc5-mm3.orig/kernel/irq/spurious.c 2006-06-05 17:26:15.000000000 -0400
+++ linux-2.6.17-rc5-mm3/kernel/irq/spurious.c 2006-06-06 06:43:43.000000000 -0400
@@ -77,7 +77,7 @@ static int misrouted_irq(int irq, struct
* If we did actual work for the real IRQ line we must let the
* IRQ controller clean up too
*/
- if (work)
+ if (work && desc->chip && desc->chip->end)
desc->chip->end(i);
spin_unlock(&desc->lock);
}