Re: [RFC] disable_irq()/enable_irq() semantics and ide-probe.c

From: Roman Zippel
Date: Thu Oct 09 2003 - 07:56:47 EST


Hi,

On Wed, 8 Oct 2003, Linus Torvalds wrote:

> And while I agree that the depth clearing is bogus, but I'd be worried
> about removing it in case some driver actually depends on it (ie
> historically it has actually been ok to do:
>
> disable_irq(irq);
> .. set up device ..
> request_irq(irq, ..); // This will also enable the irq
>
> even though it's ugly, and I hope nobody does it).

If there are such cases left, I'd really prefer we fix them, as currently
nothing protects this against another driver requesting the same irq. To
make this even more fun the behaviour is also different if the irq is
shared, as the irq is not enabled in this case.
In the ide driver I'd really like to see that at the time the probe
function reenables the interrupt there is either an irq handler installed
or it failed. On the Amiga we also have always problems with this, as the
interrupt must be acknowledged by the driver, so we have to be careful not
to leave anything pending. The irq handler would automatically take care
of this and would make this simpler.

bye, Roman

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