aboutsummaryrefslogtreecommitdiff
path: root/arch/x86
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2008-07-01 16:46:33 -0700
committerIngo Molnar <mingo@elte.hu>2008-07-08 13:16:27 +0200
commit574977a2edde0148ea365008dceb0c2594d10b11 (patch)
treef20b4093034b5a9293dba7bc132778aebbe41e26 /arch/x86
parentaea5f9f89bae5d5f9eb3fe3cddedbbfb82e6e44f (diff)
x86_64/setup: unconditionally populate the pgd
When allocating a new pud, unconditionally populate the pgd (why did we bother to create a new pud if we weren't going to populate it?). This will only happen if the pgd slot was empty, since any existing pud will be reused. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Cc: Stephen Tweedie <sct@redhat.com> Cc: Eduardo Habkost <ehabkost@redhat.com> Cc: Mark McLoughlin <markmc@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/mm/init_64.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index b10b7f17ea5..77d129d62c9 100644
--- a/arch/x86/mm/init_64.c
+++ b/arch/x86/mm/init_64.c
@@ -616,9 +616,8 @@ unsigned long __init_refok init_memory_mapping(unsigned long start, unsigned lon
last_map_addr = phys_pud_init(pud, __pa(start), __pa(next));
unmap_low_page(pud);
- if (!after_bootmem)
- pgd_populate(&init_mm, pgd_offset_k(start),
- __va(pud_phys));
+ pgd_populate(&init_mm, pgd_offset_k(start),
+ __va(pud_phys));
}
if (!after_bootmem)