linux_dsm_epyc7002/arch/x86
Thomas Gleixner 31eedd823c x86: zap invalid and unused pmds in early boot
The early boot code maps KERNEL_TEXT_SIZE (currently 40MB) starting
from __START_KERNEL_map. The kernel itself only needs _text to _end
mapped in the high alias. On relocatible kernels the ASM setup code
adjusts the compile time created high mappings to the relocation. This
creates invalid pmd entries for negative offsets:

0xffffffff80000000 -> pmd entry: ffffffffff2001e3
It points outside of the physical address space and is marked present.

This starts at the virtual address __START_KERNEL_map and goes up to
the point where the first valid physical address (0x0) is mapped.

Zap the mappings before _text and after _end right away in early
boot. This removes also the invalid entries.

Furthermore it simplifies the range check for high aliases.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-02-18 20:54:14 +01:00
..
boot Merge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 2008-02-09 23:29:57 -08:00
configs x86, core: remove CONFIG_FORCED_INLINING 2008-02-09 23:24:09 +01:00
crypto [CRYPTO] twofish: Merge common glue code 2008-01-14 17:07:57 +11:00
ia32 Sanitize the type of struct user.u_ar0 2008-02-07 08:42:30 -08:00
kernel x86: zap invalid and unused pmds in early boot 2008-02-18 20:54:14 +01:00
kvm kvm: i386 fix 2008-02-05 09:44:06 -08:00
lguest Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus 2008-01-31 09:35:32 +11:00
lib read_current_timer() cleanups 2008-02-06 10:41:02 -08:00
mach-default spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
mach-es7000 i386: es7000 minor cleanups 2007-10-17 20:16:15 +02:00
mach-generic spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
mach-rdc321x x86: add support for the RDC R-321x SoC 2008-01-30 13:33:36 +01:00
mach-visws x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-voyager calibrate_delay() must be __cpuinit 2008-02-06 10:41:08 -08:00
math-emu x86: arch/x86/math-emu/errors.c: fix printk warnings 2008-01-30 13:32:13 +01:00
mm x86: zap invalid and unused pmds in early boot 2008-02-18 20:54:14 +01:00
oprofile x86: rename stack_pointer to kernel_trap_sp 2008-01-30 13:33:16 +01:00
pci Change pci_raw_ops to pci_raw_read/write 2008-02-10 12:52:46 -08:00
power x86 PM: update stale comments 2008-02-09 23:24:09 +01:00
vdso x86: vdso_install fix 2008-02-11 20:50:09 -08:00
video i386: move video 2007-10-11 11:16:56 +02:00
xen xen: unpin initial Xen pagetable once we're finished with it 2008-02-13 16:20:35 +01:00
Kconfig KVM is not seen under X86 config with latest git (32 bit compile) 2008-02-14 23:30:21 +01:00
Kconfig.cpu x86: reduce CONFIG_X86_PPRO_FENCE bloat 2008-01-30 13:32:31 +01:00
Kconfig.debug x86: cpa, enable CONFIG_DEBUG_PAGEALLOC on 64-bit 2008-02-09 23:24:09 +01:00
Makefile x86 PM: move 64-bit hibernation files to arch/x86/power 2008-02-09 23:24:09 +01:00
Makefile_32.cpu x86: move i386 and x86_64 Makefiles to arch/x86 2007-10-25 22:27:34 +02:00