IOAPIC interrupt input priority

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
doxrobot
Member
Member
Posts: 30
Joined: Wed May 15, 2013 10:14 am

IOAPIC interrupt input priority

Post by doxrobot »

I double checked the IOAPIC specification to see if I missed it, in case I did.. maybe someone can enlighten me. My current setup is that interrupts from all peripherals other then the timing chip are set to lowest priority in their corresponding IOAPIC field. My box has 4 logical cores so with the LDR mask configured accordingly, it will interrupt the processor running at the lowest priority (I use long mode.. so cr8=0).

The question is, what happens if, for a time, all logical cores are at the same level when an interrupt is ready? Is it held and then sent to whichever local apic goes to a lower priority level first?
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Re: IOAPIC interrupt input priority

Post by Brendan »

Hi,
doxrobot wrote:The question is, what happens if, for a time, all logical cores are at the same level when an interrupt is ready? Is it held and then sent to whichever local apic goes to a lower priority level first?
It's CPU/chipset specific; but as far as I know usually the IRQs just goes to the "first" CPU if all CPUs are at the same priority. It's never held waiting for a CPU's priority to change, as this may never happen (e.g. think of an idle computer).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Post Reply