[libvirt PATCH 2/3] cpu_map: Add pschange-mc-no bit in IA32_ARCH_CAPABILITIES MSR

Jiri Denemark jdenemar at redhat.com
Sun May 24 18:10:20 UTC 2020


Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 src/cpu_map/x86_features.xml                                   | 3 +++
 tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml            | 1 +
 tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml             | 1 +
 tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml             | 1 +
 tests/cputestdata/x86_64-cpuid-Core-i7-8550U-enabled.xml       | 2 +-
 tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml         | 1 +
 tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml          | 1 +
 tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml          | 1 +
 .../cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.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/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml  | 1 +
 tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-enabled.xml  | 2 +-
 tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml     | 1 +
 tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml                 | 1 +
 tests/domaincapsdata/qemu_4.2.0.x86_64.xml                     | 1 +
 tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml                 | 1 +
 tests/domaincapsdata/qemu_5.0.0.x86_64.xml                     | 1 +
 tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml                 | 1 +
 tests/domaincapsdata/qemu_5.1.0.x86_64.xml                     | 1 +
 20 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/src/cpu_map/x86_features.xml b/src/cpu_map/x86_features.xml
index 2c4c29dc99..8525ae0fa5 100644
--- a/src/cpu_map/x86_features.xml
+++ b/src/cpu_map/x86_features.xml
@@ -509,6 +509,9 @@
   <feature name='mds-no'>
     <msr index='0x10a' edx='0x00000000' eax='0x00000020'/>
   </feature>
+  <feature name='pschange-mc-no'>
+    <msr index='0x10a' edx='0x00000000' eax='0x00000040'/>
+  </feature>
   <feature name='tsx-ctrl'>
     <msr index='0x10a' edx='0x00000000' eax='0x00000080'/>
   </feature>
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
index b5137e3c03..db5598740c 100644
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
@@ -35,6 +35,7 @@
   <feature policy='require' name='ibrs-all'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='require' name='tsx-ctrl'/>
   <feature policy='require' name='taa-no'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
index 52b352f4f1..6926b7c975 100644
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
@@ -36,6 +36,7 @@
   <feature name='ibrs-all'/>
   <feature name='skip-l1dfl-vmentry'/>
   <feature name='mds-no'/>
+  <feature name='pschange-mc-no'/>
   <feature name='tsx-ctrl'/>
   <feature name='taa-no'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
index e323d6205e..fc52805b2f 100644
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
@@ -18,6 +18,7 @@
   <feature policy='require' name='ibrs-all'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='require' name='tsx-ctrl'/>
   <feature policy='require' name='taa-no'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-enabled.xml b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-enabled.xml
index 6c480eeacf..57f8ebabba 100644
--- a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-enabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-enabled.xml
@@ -5,5 +5,5 @@
   <cpuid eax_in='0x00000007' ecx_in='0x00' eax='0x00000000' ebx='0x009c47ab' ecx='0x00000004' edx='0xac000400'/>
   <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
-  <msr index='0x10a' edx='0x00000000' eax='0x00000008'/>
+  <msr index='0x10a' edx='0x00000000' eax='0x00000048'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml
index 92404e4d03..ed06515e99 100644
--- a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml
@@ -26,6 +26,7 @@
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='invtsc'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='disable' name='hle'/>
   <feature policy='disable' name='rtm'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml
index 7f6fe2eac3..7681c94649 100644
--- a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml
@@ -27,4 +27,5 @@
   <feature name='pdpe1gb'/>
   <feature name='invtsc'/>
   <feature name='skip-l1dfl-vmentry'/>
+  <feature name='pschange-mc-no'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml
index 645c0934c2..4774d39c7e 100644
--- a/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml
@@ -14,6 +14,7 @@
   <feature policy='require' name='xsaves'/>
   <feature policy='require' name='pdpe1gb'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='disable' name='hle'/>
   <feature policy='disable' name='rtm'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
index def2fed823..641032e1b6 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-enabled.xml
@@ -6,5 +6,5 @@
   <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x008003f7' edx='0x2e500800'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x03001201' ecx='0x00000000' edx='0x00000000'/>
-  <msr index='0x10a' edx='0x00000000' eax='0x00000029'/>
+  <msr index='0x10a' edx='0x00000000' eax='0x00000069'/>
 </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 717e2fbfae..86e96e07ef 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
@@ -25,4 +25,5 @@
   <feature policy='require' name='rdctl-no'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
+  <feature policy='require' name='pschange-mc-no'/>
 </cpu>
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 81930a84e7..c63fb00cfa 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
@@ -26,4 +26,5 @@
   <feature name='rdctl-no'/>
   <feature name='skip-l1dfl-vmentry'/>
   <feature name='mds-no'/>
+  <feature name='pschange-mc-no'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
index 5f495e0452..154c2af77d 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-9-3900X-12-Core-json.xml
@@ -20,5 +20,6 @@
   <feature policy='require' name='rdctl-no'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='disable' name='monitor'/>
 </cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-enabled.xml b/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-enabled.xml
index 43c3a93a16..cd082feffe 100644
--- a/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-enabled.xml
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-enabled.xml
@@ -6,5 +6,5 @@
   <cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
   <cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
   <cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x01001000' ecx='0x00000000' edx='0x00000000'/>
-  <msr index='0x10a' edx='0x00000000' eax='0x000000ab'/>
+  <msr index='0x10a' edx='0x00000000' eax='0x000000eb'/>
 </cpudata>
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml
index 36e95029be..10c256ee1e 100644
--- a/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml
@@ -17,5 +17,6 @@
   <feature policy='require' name='ibrs-all'/>
   <feature policy='require' name='skip-l1dfl-vmentry'/>
   <feature policy='require' name='mds-no'/>
+  <feature policy='require' name='pschange-mc-no'/>
   <feature policy='require' name='tsx-ctrl'/>
 </cpu>
diff --git a/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml
index 1b8b8be2f5..fcb0505da0 100644
--- a/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml
@@ -47,6 +47,7 @@
       <feature policy='require' name='pdpe1gb'/>
       <feature policy='require' name='invtsc'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
+      <feature policy='require' name='pschange-mc-no'/>
     </mode>
     <mode name='custom' supported='yes'>
       <model usable='yes'>qemu64</model>
diff --git a/tests/domaincapsdata/qemu_4.2.0.x86_64.xml b/tests/domaincapsdata/qemu_4.2.0.x86_64.xml
index 213dcc5a08..e22ef8e032 100644
--- a/tests/domaincapsdata/qemu_4.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_4.2.0.x86_64.xml
@@ -46,6 +46,7 @@
       <feature policy='require' name='pdpe1gb'/>
       <feature policy='require' name='invtsc'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
+      <feature policy='require' name='pschange-mc-no'/>
     </mode>
     <mode name='custom' supported='yes'>
       <model usable='yes'>qemu64</model>
diff --git a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
index 45c3e00b1e..ff721530cd 100644
--- a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
@@ -47,6 +47,7 @@
       <feature policy='require' name='pdpe1gb'/>
       <feature policy='require' name='invtsc'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
+      <feature policy='require' name='pschange-mc-no'/>
     </mode>
     <mode name='custom' supported='yes'>
       <model usable='yes'>qemu64</model>
diff --git a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
index d2a884eed1..2c6066003d 100644
--- a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
@@ -46,6 +46,7 @@
       <feature policy='require' name='pdpe1gb'/>
       <feature policy='require' name='invtsc'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
+      <feature policy='require' name='pschange-mc-no'/>
     </mode>
     <mode name='custom' supported='yes'>
       <model usable='yes'>qemu64</model>
diff --git a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
index 8a1008e870..9e484ccfd0 100644
--- a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
@@ -53,6 +53,7 @@
       <feature policy='require' name='rdctl-no'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
       <feature policy='require' name='mds-no'/>
+      <feature policy='require' name='pschange-mc-no'/>
       <feature policy='disable' name='monitor'/>
     </mode>
     <mode name='custom' supported='yes'>
diff --git a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml b/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
index 96875ab6ac..b48cb45412 100644
--- a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
@@ -52,6 +52,7 @@
       <feature policy='require' name='rdctl-no'/>
       <feature policy='require' name='skip-l1dfl-vmentry'/>
       <feature policy='require' name='mds-no'/>
+      <feature policy='require' name='pschange-mc-no'/>
       <feature policy='disable' name='monitor'/>
     </mode>
     <mode name='custom' supported='yes'>
-- 
2.26.2




More information about the libvir-list mailing list