diff options
Diffstat (limited to 'arch/x86/kernel/io_apic.c')
-rw-r--r-- | arch/x86/kernel/io_apic.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/x86/kernel/io_apic.c b/arch/x86/kernel/io_apic.c index e4d36bd56b62..0a7f6d6b1206 100644 --- a/arch/x86/kernel/io_apic.c +++ b/arch/x86/kernel/io_apic.c | |||
@@ -2527,14 +2527,15 @@ static void irq_complete_move(struct irq_desc **descp) | |||
2527 | 2527 | ||
2528 | vector = ~get_irq_regs()->orig_ax; | 2528 | vector = ~get_irq_regs()->orig_ax; |
2529 | me = smp_processor_id(); | 2529 | me = smp_processor_id(); |
2530 | |||
2531 | if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) { | ||
2530 | #ifdef CONFIG_NUMA_MIGRATE_IRQ_DESC | 2532 | #ifdef CONFIG_NUMA_MIGRATE_IRQ_DESC |
2531 | *descp = desc = move_irq_desc(desc, me); | 2533 | *descp = desc = move_irq_desc(desc, me); |
2532 | /* get the new one */ | 2534 | /* get the new one */ |
2533 | cfg = desc->chip_data; | 2535 | cfg = desc->chip_data; |
2534 | #endif | 2536 | #endif |
2535 | |||
2536 | if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) | ||
2537 | send_cleanup_vector(cfg); | 2537 | send_cleanup_vector(cfg); |
2538 | } | ||
2538 | } | 2539 | } |
2539 | #else | 2540 | #else |
2540 | static inline void irq_complete_move(struct irq_desc **descp) {} | 2541 | static inline void irq_complete_move(struct irq_desc **descp) {} |