Blame SOURCES/kvm-i386-Add-Icelake-Server-v6-CPU-model-with-5-level-EP.patch

dc1fe0
From 575ca409fa21db088c76e57f7285021dd8da1569 Mon Sep 17 00:00:00 2001
dc1fe0
From: Vitaly Kuznetsov <vkuznets@redhat.com>
dc1fe0
Date: Wed, 16 Mar 2022 09:36:19 +0100
dc1fe0
Subject: [PATCH 04/14] i386: Add Icelake-Server-v6 CPU model with 5-level EPT
dc1fe0
 support
dc1fe0
dc1fe0
RH-Author: Vitaly Kuznetsov <vkuznets@redhat.com>
dc1fe0
RH-MergeRequest: 126: i386: Add Icelake-Server-v6 CPU model with 5-level EPT support
dc1fe0
RH-Commit: [2/2] a047caa01fafd8ca6a5fa0704b379edab91d4ccc
dc1fe0
RH-Bugzilla: 2038051
dc1fe0
RH-Acked-by: Igor Mammedov <imammedo@redhat.com>
dc1fe0
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
dc1fe0
RH-Acked-by: Paolo Bonzini <pbonzini@redhat.com>
dc1fe0
dc1fe0
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2038051
dc1fe0
Brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=43862630
dc1fe0
dc1fe0
commit 12cab535db6440af41ed8dfefe908a594321b6ce
dc1fe0
Author: Vitaly Kuznetsov <vkuznets@redhat.com>
dc1fe0
Date:   Mon Feb 21 15:53:15 2022 +0100
dc1fe0
dc1fe0
    i386: Add Icelake-Server-v6 CPU model with 5-level EPT support
dc1fe0
dc1fe0
    Windows 11 with WSL2 enabled (Hyper-V) fails to boot with Icelake-Server
dc1fe0
    {-v5} CPU model but boots well with '-cpu host'. Apparently, it expects
dc1fe0
    5-level paging and 5-level EPT support to come in pair but QEMU's
dc1fe0
    Icelake-Server CPU model lacks the later. Introduce 'Icelake-Server-v6'
dc1fe0
    CPU model with 'vmx-page-walk-5' enabled by default.
dc1fe0
dc1fe0
    Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
dc1fe0
    Message-Id: <20220221145316.576138-1-vkuznets@redhat.com>
dc1fe0
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
dc1fe0
dc1fe0
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
dc1fe0
---
dc1fe0
 target/i386/cpu.c | 8 ++++++++
dc1fe0
 1 file changed, 8 insertions(+)
dc1fe0
dc1fe0
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
dc1fe0
index aa9e636800..6e25d13339 100644
dc1fe0
--- a/target/i386/cpu.c
dc1fe0
+++ b/target/i386/cpu.c
dc1fe0
@@ -3505,6 +3505,14 @@ static const X86CPUDefinition builtin_x86_defs[] = {
dc1fe0
                     { /* end of list */ }
dc1fe0
                 },
dc1fe0
             },
dc1fe0
+            {
dc1fe0
+                .version = 6,
dc1fe0
+                .note = "5-level EPT",
dc1fe0
+                .props = (PropValue[]) {
dc1fe0
+                    { "vmx-page-walk-5", "on" },
dc1fe0
+                    { /* end of list */ }
dc1fe0
+                },
dc1fe0
+            },
dc1fe0
             { /* end of list */ }
dc1fe0
         }
dc1fe0
     },
dc1fe0
-- 
dc1fe0
2.31.1
dc1fe0