Commit b1f006b6 authored by Yinghai Lu's avatar Yinghai Lu Committed by Ingo Molnar

x86: make generic arch support NUMAQ, fix #2

we are checking mptable early for numaq, so don't need to reserve_bootmem
for it. bootmem is not there yet.

do the same thing as 64-bit.

found it on 64g above system from 64-bit kernel kexec to 32 bit kernel with
numaq support.
Signed-off-by: default avatarYinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent b20d70b7
...@@ -853,9 +853,13 @@ static int __init smp_scan_config(unsigned long base, unsigned long length, ...@@ -853,9 +853,13 @@ static int __init smp_scan_config(unsigned long base, unsigned long length,
smp_found_config = 1; smp_found_config = 1;
#endif #endif
mpf_found = mpf; mpf_found = mpf;
#ifdef CONFIG_X86_32
printk(KERN_INFO "found SMP MP-table at [%p] %08lx\n", printk(KERN_INFO "found SMP MP-table at [%p] %08lx\n",
mpf, virt_to_phys(mpf)); mpf, virt_to_phys(mpf));
if (!reserve)
return 1;
#ifdef CONFIG_X86_32
reserve_bootmem(virt_to_phys(mpf), PAGE_SIZE, reserve_bootmem(virt_to_phys(mpf), PAGE_SIZE,
BOOTMEM_DEFAULT); BOOTMEM_DEFAULT);
if (mpf->mpf_physptr) { if (mpf->mpf_physptr) {
...@@ -877,9 +881,6 @@ static int __init smp_scan_config(unsigned long base, unsigned long length, ...@@ -877,9 +881,6 @@ static int __init smp_scan_config(unsigned long base, unsigned long length,
} }
#else #else
if (!reserve)
return 1;
reserve_bootmem_generic(virt_to_phys(mpf), PAGE_SIZE, reserve_bootmem_generic(virt_to_phys(mpf), PAGE_SIZE,
BOOTMEM_DEFAULT); BOOTMEM_DEFAULT);
if (mpf->mpf_physptr) if (mpf->mpf_physptr)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment