Re: [patch] io-apic-2.1.98-B

MOLNAR Ingo (mingo@chiara.csoma.elte.hu)
Mon, 27 Apr 1998 00:59:12 +0200 (CEST)


On 27 Apr 1998, Claus-Justus Heine wrote:

> > I've attached a patch against vanilla-2.1.98 that works even on insane
> > hardware like NE2000 cards and shared PCI devices, survives 30 minutes
>
> If I understand your code right, then in order to enable a previously
> disabled interrupt one has to call enable_irq() as many times as
> disable_irq() previously has been called. Is this the intended
> behavior? I thought enable_irq() should re-enable the interrupt
> unconditionally? <-- question, I'm just unsure about it.

yes you are right, it should enable them unconditionally. There was a
warning in earlier ioapic code, and only floppy.c used them in an
'unbalanced' way. (floppy.c enabled IRQ6 twice, i reported this)

but most drivers use dis/enable_irq() in a 'balanced' way, thus there
should be no difference in behavior. Personally i liked that nested
dis/enable_irq() version as it _did_ show us a floppy.c bug, but maybe it
can be abused in drivers, so it should probably be changed back to the
original behavior. (yes i think it should be changed back, there is no
good reason to change the driver-API)

-- mingo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu