summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/setup.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-08-19 20:50:02 -0700
committerIngo Molnar <mingo@elte.hu>2008-10-16 16:52:08 +0200
commit301e619020dd67bde7e7e64bb9ffb7f30d26c979 (patch)
tree0abae161010dbee1c3aa4ea2c0411cfc0fbeee5c /arch/x86/kernel/setup.c
parentd17a55ded3393ad3878010bb3a8243a15a8d8df5 (diff)
x86: use dyn_array in io_apic_xx.c
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r--arch/x86/kernel/setup.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 2255782e8d4b..558ec26b08e2 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -1067,9 +1067,15 @@ void __init setup_arch(char **cmdline_p)
#endif
prefill_possible_map();
+
#ifdef CONFIG_X86_64
+ /* need to wait for nr_cpu_ids settle down */
+ if (nr_irqs == NR_IRQS)
+ nr_irqs = 32 * nr_cpu_ids + 224;
init_cpu_to_node();
#endif
+ pin_map_size = nr_irqs * 2;
+ first_free_entry = nr_irqs;
init_apic_mappings();
ioapic_init_mappings();