2005-11-30 01:15:41

by Shaohua Li

[permalink] [raw]
Subject: [PATCH] setting irq affinity is broken in ia32 with MSI enabled

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);
}




2005-11-30 02:31:11

by Ashok Raj

[permalink] [raw]
Subject: Re: [PATCH] setting irq affinity is broken in ia32 with MSI enabled

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