Re: [patch] IRQ_INPROGRESS bugfix

Linus Torvalds (torvalds@transmeta.com)
Tue, 22 Dec 1998 15:17:10 -0800 (PST)


On Tue, 22 Dec 1998, Andrea Arcangeli wrote:
>
> The i386 port had a bug in the IRQ_INPROGRESS flag handling. It was
> setting the flag even if there was no action and so even if the irq
> handler would be no executed and so even if the IRQ_INPROGRESS flag will
> remain set forever.

That's not a bug, it's a feature!

The bug is that it isn't cleared by enable_irq() - I used to do it, but
that code disappeared when I did the counting scheme, oops.

The one-liner fix is to do

irq_desc[irq].status &= ~(IRQ_DISABLED | IRQ_INPROGRESS);

in enable_irq(), the way it was meant to be. Your patch is much too
complex.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/