Skip to content

Commit 68accac

Browse files
Krzysztof MazurKAGA-KOKO
authored andcommitted
x86/setup: Fix low identity map for >= 2GB kernel range
The commit f5f3497 extended the low identity mapping. However, if the kernel uses more than 2 GB (VMSPLIT_2G_OPT or VMSPLIT_1G memory split), the normal memory mapping is overwritten by the low identity mapping causing a crash. To avoid overwritting, limit the low identity map to cover only memory before kernel range (PAGE_OFFSET). Fixes: f5f3497 "x86/setup: Extend low identity map to cover whole kernel range Signed-off-by: Krzysztof Mazur <krzysiek@podlesie.net> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Borislav Petkov <bp@alien8.de> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Matt Fleming <matt.fleming@intel.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1446815916-22105-1-git-send-email-krzysiek@podlesie.net Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
1 parent f4e342c commit 68accac

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

arch/x86/kernel/setup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1188,7 +1188,7 @@ void __init setup_arch(char **cmdline_p)
11881188
*/
11891189
clone_pgd_range(initial_page_table,
11901190
swapper_pg_dir + KERNEL_PGD_BOUNDARY,
1191-
KERNEL_PGD_PTRS);
1191+
min(KERNEL_PGD_PTRS, KERNEL_PGD_BOUNDARY));
11921192
#endif
11931193

11941194
tboot_probe();

0 commit comments

Comments
 (0)