projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7d453ee
)
x86/boot: Don't overwrite cr4 when enabling PAE
author
Matt Fleming
<matt.fleming@intel.com>
Mon, 24 Feb 2014 13:37:29 +0000
(13:37 +0000)
committer
Matt Fleming
<matt.fleming@intel.com>
Tue, 4 Mar 2014 21:43:59 +0000
(21:43 +0000)
Some EFI firmware makes use of the FPU during boottime services and
clearing X86_CR4_OSFXSR by overwriting %cr4 causes the firmware to
crash.
Add the PAE bit explicitly instead of trashing the existing contents,
leaving the rest of the bits as the firmware set them.
Cc: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
arch/x86/boot/compressed/head_64.S
patch
|
blob
|
history
diff --git
a/arch/x86/boot/compressed/head_64.S
b/arch/x86/boot/compressed/head_64.S
index 37c741b0d2acbc5d0f3f84aa3386c20d4bde9ddf..4f40cddd025d5be69b1e1f1ac12db1bfca3f1318 100644
(file)
--- a/
arch/x86/boot/compressed/head_64.S
+++ b/
arch/x86/boot/compressed/head_64.S
@@
-113,7
+113,8
@@
ENTRY(startup_32)
lgdt gdt(%ebp)
/* Enable PAE mode */
- movl $(X86_CR4_PAE), %eax
+ movl %cr4, %eax
+ orl $X86_CR4_PAE, %eax
movl %eax, %cr4
/*