x86 setup: make PM transition more paranoid; cleanup 32-bit entry
authorH. Peter Anvin <hpa@zytor.com>
Wed, 30 Jan 2008 12:33:01 +0000 (13:33 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:33:01 +0000 (13:33 +0100)
commitc4d9ba6da9f050ebb7e0d70769e3dca0fd45334f
tree03c771875a9cf2cc2026066f8a686cf53f0739f4
parent2a6648e65a2939b80c44262975176a15bac3a75e
x86 setup: make PM transition more paranoid; cleanup 32-bit entry

Make the transition to protected mode more paranoid by having
back-to-back near jump (to synchronize the 386/486 prefetch queue) and
far jump (to set up the code segment.)

While we're at it, zero as many registers as practical (for future
expandability of the 32-bit entry interface) and enter 32-bit mode
with a valid stack.  Note that the 32-bit code cannot rely on this
stack, or we'll break all other existing users of the 32-bit
entrypoint, but it may make debugging hacks easier to write.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/boot/pmjump.S