summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-11-21 00:23:37 -0800
committerIngo Molnar <mingo@elte.hu>2009-11-23 09:56:05 +0100
commit37ef2a3029fde884808ff1b369677abc7dd9a79a (patch)
treee88edc8eb4212c4c83c5f11fe7d7771d5344f459
parente670761f12f4069d204f433bf547d9c679a4fd05 (diff)
downloadlinux-37ef2a3029fde884808ff1b369677abc7dd9a79a.tar.gz
linux-37ef2a3029fde884808ff1b369677abc7dd9a79a.tar.bz2
linux-37ef2a3029fde884808ff1b369677abc7dd9a79a.zip
x86: Re-get cfg_new in case reuse/move irq_desc
When irq_desc is moved, we need to make sure to use the right cfg_new. Signed-off-by: Yinghai Lu <yinghai@kernel.org> LKML-Reference: <4B07A739.3030104@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/apic/io_apic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index ff237199fa23..085e60e303cf 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -3186,6 +3186,7 @@ unsigned int create_irq_nr(unsigned int irq_want, int node)
continue;
desc_new = move_irq_desc(desc_new, node);
+ cfg_new = desc_new->chip_data;
if (__assign_irq_vector(new, cfg_new, apic->target_cpus()) == 0)
irq = new;