Eric W. Biederman wrote:
In my older days of programmin 82489DX chipsets (which the AMD APIC versions resemble the 82489DX more closely than intel's newer incarnations), you had to EOI the apic early if you wanted to migrate interrupt assignments. I had to do the following steps to move an IRQ:** Conclusions. *IRQs must be reprogramed in interrupt context. The result of this is investigation is that I am convinced we need to perform the irq migration activities in interrupt context although I am not convinced it is completely safe. I suspect multiple irqs firing closely enough to each other may hit the same issues as migrating irqs from process context. However the odds are on our side, when we are in irq context.
1. Mask the LOCAL APIC 2, EOI the interrupt 3. Leave the interrupt entry masked until the ISR completed. 4. Reprogram the interrupt. 5. Unmask as the ISR exits In other words, EOI early in all cases to clear the local and IOAPIC state. Jeff - 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/
- Follow-Ups:
- Re: Conclusions from my investigation about ioapic programming
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: Conclusions from my investigation about ioapic programming
- References:
- Re: System crash after "No irq handler for vector" linux 2.6.19
- From: ebiederm@xmission.com (Eric W. Biederman)
- [PATCH 1/2] x86_64 irq: Simplfy __assign_irq_vector
- From: ebiederm@xmission.com (Eric W. Biederman)
- [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: Ingo Molnar <mingo@elte.hu>
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: Ingo Molnar <mingo@elte.hu>
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: [PATCH 2/2] x86_64 irq: Handle irqs pending in IRR during irq migration.
- From: ebiederm@xmission.com (Eric W. Biederman)
- What are the real ioapic rte programming constraints?
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: What are the real ioapic rte programming constraints?
- From: Zwane Mwaikambo <zwane@infradead.org>
- Re: What are the real ioapic rte programming constraints?
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: What are the real ioapic rte programming constraints?
- From: Zwane Mwaikambo <zwane@infradead.org>
- Re: What are the real ioapic rte programming constraints?
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: What are the real ioapic rte programming constraints?
- From: Zwane Mwaikambo <zwane@infradead.org>
- Re: What are the real ioapic rte programming constraints?
- From: ebiederm@xmission.com (Eric W. Biederman)
- Conclusions from my investigation about ioapic programming
- From: ebiederm@xmission.com (Eric W. Biederman)
- Re: System crash after "No irq handler for vector" linux 2.6.19
- Prev by Date: questions about 8250 uart support for adhoc boards
- Next by Date: sata_sil problems with recent kernels
- Previous by thread: Re: [PATCH 12/14] x86_64 irq: Add constants for the reserved IRQ vectors.
- Next by thread: Re: Conclusions from my investigation about ioapic programming
- Index(es):
![]() |