[libvirt PATCH v3 23/24] cpu_map: Add missing x86 feature "v-vmsave-vmload"

Tim Wiederhake twiederh at redhat.com
Fri Nov 4 15:43:43 UTC 2022


Signed-off-by: Tim Wiederhake <twiederh at redhat.com>
Reviewed-by: Jiri Denemark <jdenemar at redhat.com>
---
 src/cpu_map/x86_features.xml                                   | 3 +++
 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml  | 2 +-
 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml     | 1 +
 tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml      | 1 +
 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml  | 2 +-
 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml     | 1 +
 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml      | 1 +
 .../x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml           | 2 +-
 .../cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml  | 1 +
 tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml | 1 +
 .../x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml           | 2 +-
 .../cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml  | 1 +
 tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml | 1 +
 .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml         | 2 +-
 .../x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml            | 1 +
 .../cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml | 1 +
 .../x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml            | 2 +-
 tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml | 1 +
 tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml  | 1 +
 tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml                 | 1 +
 tests/domaincapsdata/qemu_7.2.0.x86_64.xml                     | 1 +
 tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args       | 2 +-
 22 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml
index 9f3bcc619a..8d8679e29c 100644
--- a/src/cpu_map/x86_features.xml
+++ b/src/cpu_map/x86_features.xml
@@ -650,6 +650,9 @@
   <feature name='avic'>
     <cpuid eax_in='0x8000000a' edx='0x00002000'/>
   </feature>
+  <feature name='v-vmsave-vmload'>
+    <cpuid eax_in='0x8000000a' edx='0x00008000'/>
+  </feature>
   <feature name='svme-addr-chk'>
     <cpuid eax_in='0x8000000a' edx='0x10000000'/>
   </feature>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
index bb8fac53b2..be9fa836e9 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-disabled.xml
@@ -6,5 +6,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00004000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
index 84434311e5..f823b9c63a 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-guest.xml
@@ -28,6 +28,7 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
   <feature policy='require' name='rdctl-no'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
index 072ece03f3..0e2d4d735d 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
@@ -30,6 +30,7 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
   <feature name='rdctl-no'/>
   <feature name='skip-l1dfl-vmentry'/>
   <feature name='mds-no'/>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml
index 3b9286b5e0..43e40c2dde 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-disabled.xml
@@ -5,5 +5,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
index 2a8d77eaa7..db11367649 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
@@ -27,4 +27,5 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml
index bf948c55a7..f758bf19c2 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-host.xml
@@ -29,4 +29,5 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml
index e35657a140..e64b5e831c 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-disabled.xml
@@ -5,5 +5,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x08000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml
index 355e346610..842d4d8e51 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-guest.xml
@@ -27,5 +27,6 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
   <feature policy='disable' name='rdtscp'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
index 3cc3049b33..8859aa62f3 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
@@ -29,4 +29,5 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml
index 3b9286b5e0..43e40c2dde 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-disabled.xml
@@ -5,5 +5,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c2300c' edx='0x00000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
index 078c9e710b..4e3f72b690 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-guest.xml
@@ -27,4 +27,5 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
index 57bc118776..acdefb29e0 100644
--- a/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Hygon-C86-7185-32-core-host.xml
@@ -29,4 +29,5 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml
index c7e54a5ac8..bed241b6fb 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-disabled.xml
@@ -6,5 +6,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01c23008' edx='0x00000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00000005' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
index 2a8d77eaa7..db11367649 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
@@ -27,4 +27,5 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml
index 99452979ee..0b9918b726 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-host.xml
@@ -29,4 +29,5 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
index 045ea7c99a..f2da924b62 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-disabled.xml
@@ -6,5 +6,5 @@
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x01423408' edx='0x00000000'/>
   <cpuid eax_in='0x80000007' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x00000100'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x00008000' ecx='0x00000000' edx='0x00000000'/>
-  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x000034f6'/>
+  <cpuid eax_in='0x8000000a' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000000' edx='0x0000b4f6'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
index 758b184da9..7e6277dc26 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-guest.xml
@@ -27,6 +27,7 @@
   <feature policy='require' name='pause-filter'/>
   <feature policy='require' name='pfthreshold'/>
   <feature policy='require' name='avic'/>
+  <feature policy='require' name='v-vmsave-vmload'/>
   <feature policy='require' name='rdctl-no'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
index de5f40e4db..9b27573e43 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-host.xml
@@ -29,6 +29,7 @@
   <feature name='pause-filter'/>
   <feature name='pfthreshold'/>
   <feature name='avic'/>
+  <feature name='v-vmsave-vmload'/>
   <feature name='rdctl-no'/>
   <feature name='skip-l1dfl-vmentry'/>
   <feature name='mds-no'/>
diff --git a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
index 76c2bcd511..f907c55b8d 100644
--- a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
@@ -61,6 +61,7 @@
       <feature policy='require' name='vmcb-clean'/>
       <feature policy='require' name='pause-filter'/>
       <feature policy='require' name='pfthreshold'/>
+      <feature policy='require' name='v-vmsave-vmload'/>
       <feature policy='require' name='svme-addr-chk'/>
       <feature policy='require' name='rdctl-no'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
diff --git a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
index 882fd9c40b..307099f0bb 100644
--- a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
@@ -60,6 +60,7 @@
       <feature policy='require' name='vmcb-clean'/>
       <feature policy='require' name='pause-filter'/>
       <feature policy='require' name='pfthreshold'/>
+      <feature policy='require' name='v-vmsave-vmload'/>
       <feature policy='require' name='svme-addr-chk'/>
       <feature policy='require' name='rdctl-no'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
diff --git a/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args b/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
index e4b66574db..80758fc45f 100644
--- a/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
@@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-QEMUGuest1/.config \
 -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/tmp/lib/domain--1-QEMUGuest1/master-key.aes"}' \
 -machine q35,usb=off,dump-guest-core=off,memory-backend=pc.ram \
 -accel kvm \
--cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,pause-filter=on,pfthreshold=on,svme-addr-chk=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on \
+-cpu EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,svme-addr-chk=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on \
 -m 214 \
 -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}' \
 -overcommit mem-lock=off \
-- 
2.36.1



More information about the libvir-list mailing list