Messages in this thread | | | Date | Mon, 22 Mar 2004 10:12:12 +0100 (CET) | From | "Maciej W. Rozycki" <> | Subject | Re: spurious 8259A interrupt |
| |
On Sun, 21 Mar 2004, Hans-Peter Jansen wrote:
> > The IRQ7 spurious is usually an artifact of a crappy motherboard > > design where the CPU "thinks" it was interrupted, but the > > controller didn't wiggle the CPUs INT line. > > Thanks for the nice explanation, Richard.
Unfortunately this needs not be the reason. Another possibility is a crappy driver -- if a device generates a level-triggered interrupt which does not deassert immediately after getting acked (perhaps because the IRQ line is firmware-driven) and the handler in the driver doesn't ack it soon enough, it's possible for the interrupt line to be still asserted after exiting the handler. The processor may have enough time to accept the interrupt again and with the right timing, the line may go inactive right in a middle of the processor's interrupt acknowledge sequence. The 8259A PIC will signal a spurious interrupt in this case.
-- + 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/
| |