Messages in this thread | | | Subject | Re: [patch 3/3] genirq: mark io_apic level interrupts to avoid resend | From | Benjamin Herrenschmidt <> | Date | Mon, 13 Aug 2007 13:42:12 -0500 |
| |
> handle_fasteoi_irq is special. It is used by ioapic and weird Powerpc > hardware. We marked the ioapic level interrupts IRQ_LEVEL, so we wont > get a resend on them (see kernel/irq/resend.c)
s/weird/sane :-)
More specifically, it's used by "intelligent" PICs that automatically do the masking of the source (or internally handle priority levels) and only need an "eoi" when the OS is finished processing the latest interrupt. (On those PICs, the ack is generally an implicit part of fetching the next pending interrupt, and the eoi consist of bringing the current processor priority back to what it was before the interrupt occured).
I also suspect that any hypervisor using a different method than this one for paravirt irqs is broken :-)
Ben.
- 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/
| |