diff options
author | Mike Travis <travis@sgi.com> | 2008-12-31 21:08:47 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-03 13:15:40 -0500 |
commit | 80855f7361eb68205e6bc1981928629d9b02d5c9 (patch) | |
tree | 029e78df08989c8d335b67a8031c784136a57539 /arch/x86/kernel/io_apic.c | |
parent | 2fdf66b491ac706657946442789ec644cc317e1a (diff) |
cpumask: use alloc_cpumask_var_node where appropriate
Impact: Reduce inter-node memory traffic.
Reduces inter-node memory traffic (offloading the global system bus)
by allocating referenced struct cpumasks on the same node as the
referring struct.
Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/io_apic.c')
-rw-r--r-- | arch/x86/kernel/io_apic.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/io_apic.c b/arch/x86/kernel/io_apic.c index 3e070bb961d7..a25c3f76b8ac 100644 --- a/arch/x86/kernel/io_apic.c +++ b/arch/x86/kernel/io_apic.c | |||
@@ -212,11 +212,11 @@ static struct irq_cfg *get_one_free_irq_cfg(int cpu) | |||
212 | 212 | ||
213 | cfg = kzalloc_node(sizeof(*cfg), GFP_ATOMIC, node); | 213 | cfg = kzalloc_node(sizeof(*cfg), GFP_ATOMIC, node); |
214 | if (cfg) { | 214 | if (cfg) { |
215 | /* FIXME: needs alloc_cpumask_var_node() */ | 215 | if (!alloc_cpumask_var_node(&cfg->domain, GFP_ATOMIC, node)) { |
216 | if (!alloc_cpumask_var(&cfg->domain, GFP_ATOMIC)) { | ||
217 | kfree(cfg); | 216 | kfree(cfg); |
218 | cfg = NULL; | 217 | cfg = NULL; |
219 | } else if (!alloc_cpumask_var(&cfg->old_domain, GFP_ATOMIC)) { | 218 | } else if (!alloc_cpumask_var_node(&cfg->old_domain, |
219 | GFP_ATOMIC, node)) { | ||
220 | free_cpumask_var(cfg->domain); | 220 | free_cpumask_var(cfg->domain); |
221 | kfree(cfg); | 221 | kfree(cfg); |
222 | cfg = NULL; | 222 | cfg = NULL; |