On Sun, 2005-11-27 at 11:03 -0800, Mark Knecht wrote: > OK, this 'priority' is the Linux kernel's priority. The 'priority' I > was speaking of was the actual hardware priority. They are different > things. > > In the older PIC when an ISR was entered all lower hardware 'priority' > IRQ are blocked until the ISR tells the PIC it is ready to release. > That is the numerical list I gave earlier. In that list is something > at IRQ14 starts and doesn't release then all interrupts of lower > hardware priority (15,3,4,5,6,7) will not happen. > Wrong. PIC or APIC, interrupts do not delay other interrupts in this way. If a disk interrupt happens on IRQ14 then a soundcard interrupt on IRQ5 fires immediately after then the disk interrupt handler will be interrupted by the sound card interrupt handler. That's why they are called interrupts! This is why I keep trying to explain that there is no "priority" relationship between interrupts. In the above scenario if BOTH devices were sharing IRQ14 then the second interrupt handler WOULD be delayed until the first finished. The ability to prioritize interrupts with the -rt kernel is useful because interrupts can be prevented from interrupting USERSPACE code. I think people might be confused because Windows has a notion of the interrupt priority level? Lee