diff options
author | Yinghai Lu <yinghai@kernel.org> | 2009-11-24 02:48:18 -0800 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-11-24 12:10:51 +0100 |
commit | b24c2a925a9837cccf54d50aeac22ba0cbc15455 (patch) | |
tree | 41da574f9dd4c39c290fd0480cb615d808b84cb5 /arch/x86/kernel/setup.c | |
parent | eb41c8be89dbe079f49202774e04a79ccac48a09 (diff) | |
download | blackbird-op-linux-b24c2a925a9837cccf54d50aeac22ba0cbc15455.tar.gz blackbird-op-linux-b24c2a925a9837cccf54d50aeac22ba0cbc15455.zip |
x86: Move find_smp_config() earlier and avoid bootmem usage
Move the find_smp_config() call to before bootmem is initialized.
Use reserve_early() instead of reserve_bootmem() in it.
This simplifies the code, we only need to call find_smp_config()
once and can remove the now unneeded reserve parameter from
x86_init_mpparse::find_smp_config.
We thus also reduce x86's dependency on bootmem allocations.
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
LKML-Reference: <4B0BB9F2.70907@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r-- | arch/x86/kernel/setup.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index e3eae5965e4a..cdb6a8a506dd 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -913,6 +913,11 @@ void __init setup_arch(char **cmdline_p) early_acpi_boot_init(); + /* + * Find and reserve possible boot-time SMP configuration: + */ + find_smp_config(); + #ifdef CONFIG_ACPI_NUMA /* * Parse SRAT to discover nodes. @@ -927,11 +932,6 @@ void __init setup_arch(char **cmdline_p) initmem_init(0, max_pfn, acpi, k8); - /* - * Find and reserve possible boot-time SMP configuration: - */ - find_smp_config(); - #ifdef CONFIG_X86_64 /* * dma32_reserve_bootmem() allocates bootmem which may conflict |