diff options
author | Ian Campbell <ijc@hellion.org.uk> | 2008-01-30 07:33:27 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:33:27 -0500 |
commit | 5756dd59f118daacd68ee971a2381360ef769c48 (patch) | |
tree | 6adc2bdbb89e4bcb4db98cb3cf6d8b9f04c99e38 /arch/x86/kernel/head_32.S | |
parent | 503595010f2024b236fd2636a7318fe64c794d6c (diff) |
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>
Diffstat (limited to 'arch/x86/kernel/head_32.S')
-rw-r--r-- | arch/x86/kernel/head_32.S | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S index 7b9b2566b7a..a2b6331434d 100644 --- a/arch/x86/kernel/head_32.S +++ b/arch/x86/kernel/head_32.S | |||
@@ -221,6 +221,8 @@ ENTRY(startup_32_smp) | |||
221 | movl %eax,%es | 221 | movl %eax,%es |
222 | movl %eax,%fs | 222 | movl %eax,%fs |
223 | movl %eax,%gs | 223 | movl %eax,%gs |
224 | #endif /* CONFIG_SMP */ | ||
225 | 3: | ||
224 | 226 | ||
225 | /* | 227 | /* |
226 | * New page tables may be in 4Mbyte page mode and may | 228 | * New page tables may be in 4Mbyte page mode and may |
@@ -267,8 +269,6 @@ ENTRY(startup_32_smp) | |||
267 | wrmsr | 269 | wrmsr |
268 | 270 | ||
269 | 6: | 271 | 6: |
270 | #endif /* CONFIG_SMP */ | ||
271 | 3: | ||
272 | 272 | ||
273 | /* | 273 | /* |
274 | * Enable paging | 274 | * Enable paging |