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 84bccac4619f..9578d33f20a0 100644 --- a/arch/x86/kernel/io_apic.c +++ b/arch/x86/kernel/io_apic.c | |||
@@ -2524,14 +2524,15 @@ static void irq_complete_move(struct irq_desc **descp) | |||
2524 | 2524 | ||
2525 | vector = ~get_irq_regs()->orig_ax; | 2525 | vector = ~get_irq_regs()->orig_ax; |
2526 | me = smp_processor_id(); | 2526 | me = smp_processor_id(); |
2527 | |||
2528 | if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) { | ||
2527 | #ifdef CONFIG_NUMA_MIGRATE_IRQ_DESC | 2529 | #ifdef CONFIG_NUMA_MIGRATE_IRQ_DESC |
2528 | *descp = desc = move_irq_desc(desc, me); | 2530 | *descp = desc = move_irq_desc(desc, me); |
2529 | /* get the new one */ | 2531 | /* get the new one */ |
2530 | cfg = desc->chip_data; | 2532 | cfg = desc->chip_data; |
2531 | #endif | 2533 | #endif |
2532 | |||
2533 | if (vector == cfg->vector && cpumask_test_cpu(me, cfg->domain)) | ||
2534 | send_cleanup_vector(cfg); | 2534 | send_cleanup_vector(cfg); |
2535 | } | ||
2535 | } | 2536 | } |
2536 | #else | 2537 | #else |
2537 | static inline void irq_complete_move(struct irq_desc **descp) {} | 2538 | static inline void irq_complete_move(struct irq_desc **descp) {} |