Messages in this thread | | | Date | Thu, 23 Mar 2000 19:12:37 +0100 (MET) | From | "Maciej W. Rozycki" <> | Subject | Re: i8259 IRQ problems |
| |
On Thu, 23 Mar 2000, Manfred Spraul wrote:
> 1) why do we use 0x30 for the INVALIDATE_TLB_INTERRUPT? > The interrupt is extremely time critical [another cpu waits for > completion], and very short. > > Shouldn't we use an interrupt with the highest io apic priority? > [0xF0..0xFF]?
AFAIR, APIC does not use the priority to choose the sequence of dispensing interrupts. It dispenses them in the order they arrive. Besides it doesn't really matter as about the only interrupt that can arrive at the same time is the local timer interrupt -- LINT0 and LINT1 interrupts are not used this way, PC interrupts are currently not used at all and if we receive an error interrupt then we probably have more troubles than just the increased TLB invalidation latency. IIRC, there is a fixed arbitration used between local and serial (i.e. these received over the inter-APIC bus) interrupts but I don't remember the details -- I can lookup docs if you are curious.
The priority is used to mask out some of interrupts when running higher priority tasks. We do not use this model -- the task priority register is set to zero once and forever.
-- + 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.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |