From: Joerg Roedel <jroe...@suse.de>

Reload the GDT after switching to virtual addresses to make sure it will
not go away when the lower mappings are removed.

Signed-off-by: Joerg Roedel <jroe...@suse.de>
---
 arch/x86/kernel/head_64.S | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index 5219a70b3fb4..ebb7d512c9d3 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -163,6 +163,11 @@ SYM_CODE_START(secondary_startup_64)
 1:
        UNWIND_HINT_EMPTY
 
+       /* Setup boot GDT descriptor and load boot GDT */
+       leaq    boot_gdt(%rip), %rax
+       movq    %rax, boot_gdt_base(%rip)
+       lgdt    boot_gdt_descr(%rip)
+
        /* Check if nx is implemented */
        movl    $0x80000001, %eax
        cpuid
-- 
2.17.1

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to