Hi all,

I am a Linux newbie in kernel development. In class I was asked a question about IRQ distribution as followed.
IRQs can be distributed among the available CPUs (in a multiple-CPU system) in two ways:
(1) Static distribution
The IRQ signal is delivered to the local APICs listed in the corresponding Redirection Table entry. The interrupt is delivered to one specific CPU, to a subset of CPUs, or to all CPUs at once (broadcast mode).
(2) Dynamic distribution
The IRQ signal is delivered to the local APIC of the processor that is executing the process with the lowest priority. Task Priority Register (TPR) is used to compute the priority of the currently running process.
So I wonder which one is used, or both (how if so) in Linux kernel 2.6 or higher. I know this is a silly question but I did not find out any clear indication of the IRQ load-balance problem.
Thank you very much!