x86, sparseirq: move irq_desc according to smp_affinity, v7
authorYinghai Lu <yinghai@kernel.org>
Thu, 11 Dec 2008 08:15:01 +0000 (00:15 -0800)
committerIngo Molnar <mingo@elte.hu>
Tue, 16 Dec 2008 23:14:01 +0000 (00:14 +0100)
commit48a1b10aff588833b73994704c47bbd0deb73e9c
treedeb3c7b486346c3afa54014b3c3516344c2708f2
parent13bd41bc227a48d6cf8992a3286bf6eba3c71a0c
x86, sparseirq: move irq_desc according to smp_affinity, v7

Impact: improve NUMA handling by migrating irq_desc on smp_affinity changes

if CONFIG_NUMA_MIGRATE_IRQ_DESC is set:

-  make irq_desc to go with affinity aka irq_desc moving etc
-  call move_irq_desc in irq_complete_move()
-  legacy irq_desc is not moved, because they are allocated via static array

for logical apic mode, need to add move_desc_in_progress_in_same_domain,
otherwise it will not be moved ==> also could need two phases to get
irq_desc moved.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/Kconfig
arch/x86/kernel/io_apic.c
include/linux/irq.h
kernel/irq/Makefile
kernel/irq/chip.c
kernel/irq/handle.c
kernel/irq/internals.h
kernel/irq/numa_migrate.c [new file with mode: 0644]