[PATCH] x86_64: Unmap NULL during early bootup
authorSiddha, Suresh B <suresh.b.siddha@intel.com>
Sat, 5 Nov 2005 16:25:53 +0000 (17:25 +0100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 15 Nov 2005 03:55:14 +0000 (19:55 -0800)
commitf6c2e3330d3fdd5474bc3756da46fca889a30e33
tree41b7534c39a6aea4ae1f0a75c6eb03f6e4b6312c
parent69d81fcde7797342417591ba7affb372b9c86eae
[PATCH] x86_64: Unmap NULL during early bootup

We should zap the low mappings, as soon as possible, so that we can catch
kernel bugs more effectively. Previously early boot had NULL mapped
and didn't trap on NULL references.

This patch introduces boot_level4_pgt, which will always have low identity
addresses mapped.  Druing boot, all the processors will use this as their
level4 pgt.  On BP, we will switch to init_level4_pgt as soon as we enter C
code and zap the low mappings as soon as we are done with the usage of
identity low mapped addresses.  On AP's we will zap the low mappings as
soon as we jump to C code.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/acpi/boot.c
arch/x86_64/kernel/head.S
arch/x86_64/kernel/head64.c
arch/x86_64/kernel/mpparse.c
arch/x86_64/kernel/setup.c
arch/x86_64/kernel/setup64.c
arch/x86_64/kernel/smpboot.c
arch/x86_64/mm/init.c
include/asm-x86_64/pgtable.h
include/asm-x86_64/proto.h
include/asm-x86_64/smp.h