Messages in this thread | | | Date | Thu, 27 May 2004 16:26:40 +0200 (CEST) | From | "Maciej W. Rozycki" <> | Subject | Re: Cleanups for APIC |
| |
On Thu, 27 May 2004, Ingo Molnar wrote:
> > The I/O APIC need not be hooked to PCI ;-) -- I'm not sure about the > > i82093AA, but that's definitely true for the i82489DX. The call to > > io_apic_sync() is needed for masking to make sure interrupts won't be > > dispatched after returning from the call -- this is not needed for > > unmasking as a delay here is harmless. > > well, an APIC message could be on the way to the CPU even with this > synchronization. Does it matter whether it's a newly dispatched one due > to POST delays or an in-fly one due to APIC bus delays?
Well, if you'd mask, sync, ack (send EOI) in a handler, then the sync would assure the ack wouldn't be in effect before masking, so no further interrupt would arrive till unmasking. It would work for level-triggered interrupts and the i82093AA, but OTOH for the i82489DX, which uses level-deassert messages, it wouldn't.
Too much hassle for an unreliable result... Just scrap it.
-- + Maciej W. Rozycki, Technical University of Gdansk, Poland + +--------------------------------------------------------------+ + e-mail: macro@ds2.pg.gda.pl, PGP key available + - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |