summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/setup_64.c
diff options
context:
space:
mode:
authorYinghai Lu <yhlu.kernel@gmail.com>2008-06-03 01:43:24 -0700
committerIngo Molnar <mingo@elte.hu>2008-06-10 11:30:47 +0200
commitdb3660c1905293b91653e07f7857576df71ebf28 (patch)
treeb4260c18c92c4f7be570995ff62edda39b8f0a88 /arch/x86/kernel/setup_64.c
parent237749428552e2f81ec6c801482dfd8a777e470b (diff)
x86: remove all active memory ranges before registering them again after trimming - 64bit
this way we keep the early_node_map all right. Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup_64.c')
-rw-r--r--arch/x86/kernel/setup_64.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c
index adf3b04dc582..26d60cc0e370 100644
--- a/arch/x86/kernel/setup_64.c
+++ b/arch/x86/kernel/setup_64.c
@@ -368,6 +368,7 @@ void __init setup_arch(char **cmdline_p)
/* update e820 for memory not covered by WB MTRRs */
mtrr_bp_init();
if (mtrr_trim_uncached_memory(end_pfn)) {
+ remove_all_active_ranges();
e820_register_active_regions(0, 0, -1UL);
end_pfn = e820_end_of_ram();
}