diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/boot/compressed/head_64.S | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/x86/boot/compressed/head_64.S b/arch/x86/boot/compressed/head_64.S index fb984c0c0c99..5c80b94f6c4a 100644 --- a/arch/x86/boot/compressed/head_64.S +++ b/arch/x86/boot/compressed/head_64.S | |||
@@ -154,6 +154,12 @@ ENTRY(startup_32) | |||
154 | btsl $_EFER_LME, %eax | 154 | btsl $_EFER_LME, %eax |
155 | wrmsr | 155 | wrmsr |
156 | 156 | ||
157 | /* After gdt is loaded */ | ||
158 | xorl %eax, %eax | ||
159 | lldt %ax | ||
160 | movl $0x20, %eax | ||
161 | ltr %ax | ||
162 | |||
157 | /* | 163 | /* |
158 | * Setup for the jump to 64bit mode | 164 | * Setup for the jump to 64bit mode |
159 | * | 165 | * |
@@ -239,9 +245,6 @@ preferred_addr: | |||
239 | movl %eax, %ss | 245 | movl %eax, %ss |
240 | movl %eax, %fs | 246 | movl %eax, %fs |
241 | movl %eax, %gs | 247 | movl %eax, %gs |
242 | lldt %ax | ||
243 | movl $0x20, %eax | ||
244 | ltr %ax | ||
245 | 248 | ||
246 | /* | 249 | /* |
247 | * Compute the decompressed kernel start address. It is where | 250 | * Compute the decompressed kernel start address. It is where |