summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Campbell <ijc@hellion.org.uk>2008-01-30 13:33:27 +0100
committerIngo Molnar <mingo@elte.hu>2008-01-30 13:33:27 +0100
commit5756dd59f118daacd68ee971a2381360ef769c48 (patch)
tree6adc2bdbb89e4bcb4db98cb3cf6d8b9f04c99e38
parent503595010f2024b236fd2636a7318fe64c794d6c (diff)
downloadlinux-5756dd59f118daacd68ee971a2381360ef769c48.tar.bz2
x86_32: always run the full set of paging state.
I am preparing to convert the boot time page table to the kernels native format. To achieve that I need to enable PAE. Enabling PSE and the no execute bit would not hurt. So this patch modifies the boot cpu path to execute all of the kernels enable code if and only if we have the proper bits set in mmu_cr4_features. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Ian Campbell <ijc@hellion.org.uk> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Mika Penttilä <mika.penttila@kolumbus.fi> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/kernel/head_32.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S
index 7b9b2566b7a8..a2b6331434da 100644
--- a/arch/x86/kernel/head_32.S
+++ b/arch/x86/kernel/head_32.S
@@ -221,6 +221,8 @@ ENTRY(startup_32_smp)
movl %eax,%es
movl %eax,%fs
movl %eax,%gs
+#endif /* CONFIG_SMP */
+3:
/*
* New page tables may be in 4Mbyte page mode and may
@@ -267,8 +269,6 @@ ENTRY(startup_32_smp)
wrmsr
6:
-#endif /* CONFIG_SMP */
-3:
/*
* Enable paging