Setting irq affinity stops working when MSI is enabled. With MSI,
move_irq is empty, so we can't change irq affinity. It appears a typo in
Ashok's original commit for this issue. X86_64 actually is using
move_native_irq.
Signed-off-by: Shaohua Li <[email protected]>
--- a/arch/i386/kernel/io_apic.c 2005-11-29 22:22:16.000000000 -0800
+++ b/arch/i386/kernel/io_apic.c 2005-11-29 22:23:01.000000000 -0800
@@ -2009,7 +2009,7 @@ static void ack_edge_ioapic_vector(unsig
{
int irq = vector_to_irq(vector);
- move_irq(vector);
+ move_native_irq(vector);
ack_edge_ioapic_irq(irq);
}
@@ -2024,7 +2024,7 @@ static void end_level_ioapic_vector (uns
{
int irq = vector_to_irq(vector);
- move_irq(vector);
+ move_native_irq(vector);
end_level_ioapic_irq(irq);
}
On Wed, Nov 30, 2005 at 12:37:15AM -0800, Shaohua Li wrote:
> Setting irq affinity stops working when MSI is enabled. With MSI,
> move_irq is empty, so we can't change irq affinity. It appears a typo in
> Ashok's original commit for this issue. X86_64 actually is using
> move_native_irq.
>
> Signed-off-by: Shaohua Li <[email protected]>
Yep...Think i missed the MSI/i386 case.
Looks good
Ashok Raj