render / rpms / libvirt

Forked from rpms/libvirt 9 months ago
Clone
b971b8
From 1c8af21807f2cdaaa24651808f6dfeebfbcf75bb Mon Sep 17 00:00:00 2001
b971b8
Message-Id: <1c8af21807f2cdaaa24651808f6dfeebfbcf75bb@dist-git>
b971b8
From: Jiri Denemark <jdenemar@redhat.com>
b971b8
Date: Tue, 26 May 2020 10:59:40 +0200
b971b8
Subject: [PATCH] cpu_map: Add Cooperlake x86 CPU model
b971b8
MIME-Version: 1.0
b971b8
Content-Type: text/plain; charset=UTF-8
b971b8
Content-Transfer-Encoding: 8bit
b971b8
b971b8
The stepping range (10-11) is likely incomplete. QEMU uses 10 and the
b971b8
CPUID data for Cooperlake show 11. We will update the range if needed
b971b8
once more details about he CPU are available.
b971b8
b971b8
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
b971b8
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
b971b8
(cherry picked from commit 3944f6855b9d4df73754bb6e5c8023d77399879b)
b971b8
b971b8
https://bugzilla.redhat.com/show_bug.cgi?id=1781878
b971b8
b971b8
Conflicts:
b971b8
	tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
b971b8
	tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml
b971b8
	tests/domaincapsdata/qemu_5.1.0.x86_64.xml
b971b8
            - test data files do not exist downstream
b971b8
b971b8
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
b971b8
Message-Id: <62f2fa3e2ecab2026c41e93430b4e2b695c674f0.1590483392.git.jdenemar@redhat.com>
b971b8
Reviewed-by: Ján Tomko <jtomko@redhat.com>
b971b8
---
b971b8
 src/cpu_map/index.xml                         |  1 +
b971b8
 src/cpu_map/x86_Cooperlake.xml                | 90 +++++++++++++++++++
b971b8
 .../x86_64-cpuid-Cooperlake-guest.xml         | 13 +--
b971b8
 .../x86_64-cpuid-Cooperlake-host.xml          | 13 +--
b971b8
 .../x86_64-cpuid-Cooperlake-json.xml          | 13 +--
b971b8
 .../domaincapsdata/qemu_5.0.0-q35.x86_64.xml  |  1 +
b971b8
 .../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml  |  1 +
b971b8
 tests/domaincapsdata/qemu_5.0.0.x86_64.xml    |  1 +
b971b8
 8 files changed, 100 insertions(+), 33 deletions(-)
b971b8
 create mode 100644 src/cpu_map/x86_Cooperlake.xml
b971b8
b971b8
diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
b971b8
index 50b030de29..ff1da2e677 100644
b971b8
--- a/src/cpu_map/index.xml
b971b8
+++ b/src/cpu_map/index.xml
b971b8
@@ -54,6 +54,7 @@
b971b8
     <include filename="x86_Icelake-Client-noTSX.xml"/>
b971b8
     <include filename="x86_Icelake-Server.xml"/>
b971b8
     <include filename="x86_Icelake-Server-noTSX.xml"/>
b971b8
+    <include filename="x86_Cooperlake.xml"/>
b971b8
 
b971b8
     
b971b8
     <include filename="x86_athlon.xml"/>
b971b8
diff --git a/src/cpu_map/x86_Cooperlake.xml b/src/cpu_map/x86_Cooperlake.xml
b971b8
new file mode 100644
b971b8
index 0000000000..41bd210638
b971b8
--- /dev/null
b971b8
+++ b/src/cpu_map/x86_Cooperlake.xml
b971b8
@@ -0,0 +1,90 @@
b971b8
+<cpus>
b971b8
+  <model name='Cooperlake'>
b971b8
+    <decode host='on' guest='on'/>
b971b8
+    <signature family='6' model='85' stepping='10-11'/> 
b971b8
+    <vendor name='Intel'/>
b971b8
+    <feature name="3dnowprefetch"/>
b971b8
+    <feature name="abm"/>
b971b8
+    <feature name="adx"/>
b971b8
+    <feature name="aes"/>
b971b8
+    <feature name="apic"/>
b971b8
+    <feature name="arat"/>
b971b8
+    <feature name="arch-capabilities"/>
b971b8
+    <feature name="avx"/>
b971b8
+    <feature name="avx2"/>
b971b8
+    <feature name="avx512-bf16"/>
b971b8
+    <feature name="avx512bw"/>
b971b8
+    <feature name="avx512cd"/>
b971b8
+    <feature name="avx512dq"/>
b971b8
+    <feature name="avx512f"/>
b971b8
+    <feature name="avx512vl"/>
b971b8
+    <feature name="avx512vnni"/>
b971b8
+    <feature name="bmi1"/>
b971b8
+    <feature name="bmi2"/>
b971b8
+    <feature name="clflush"/>
b971b8
+    <feature name="clflushopt"/>
b971b8
+    <feature name="clwb"/>
b971b8
+    <feature name="cmov"/>
b971b8
+    <feature name="cx16"/>
b971b8
+    <feature name="cx8"/>
b971b8
+    <feature name="de"/>
b971b8
+    <feature name="erms"/>
b971b8
+    <feature name="f16c"/>
b971b8
+    <feature name="fma"/>
b971b8
+    <feature name="fpu"/>
b971b8
+    <feature name="fsgsbase"/>
b971b8
+    <feature name="fxsr"/>
b971b8
+    <feature name="hle"/>
b971b8
+    <feature name="ibrs-all"/>
b971b8
+    <feature name="invpcid"/>
b971b8
+    <feature name="lahf_lm"/>
b971b8
+    <feature name="lm"/>
b971b8
+    <feature name="mca"/>
b971b8
+    <feature name="mce"/>
b971b8
+    <feature name="mds-no"/>
b971b8
+    <feature name="mmx"/>
b971b8
+    <feature name="movbe"/>
b971b8
+    <feature name="msr"/>
b971b8
+    <feature name="mtrr"/>
b971b8
+    <feature name="nx"/>
b971b8
+    <feature name="pae"/>
b971b8
+    <feature name="pat"/>
b971b8
+    <feature name="pcid"/>
b971b8
+    <feature name="pclmuldq"/>
b971b8
+    <feature name="pdpe1gb"/>
b971b8
+    <feature name="pge"/>
b971b8
+    <feature name="pku"/>
b971b8
+    <feature name="pni"/>
b971b8
+    <feature name="popcnt"/>
b971b8
+    <feature name="pschange-mc-no"/>
b971b8
+    <feature name="pse"/>
b971b8
+    <feature name="pse36"/>
b971b8
+    <feature name="rdctl-no"/>
b971b8
+    <feature name="rdrand"/>
b971b8
+    <feature name="rdseed"/>
b971b8
+    <feature name="rdtscp"/>
b971b8
+    <feature name="rtm"/>
b971b8
+    <feature name="sep"/>
b971b8
+    <feature name="skip-l1dfl-vmentry"/>
b971b8
+    <feature name="smap"/>
b971b8
+    <feature name="smep"/>
b971b8
+    <feature name="spec-ctrl"/>
b971b8
+    <feature name="ssbd"/>
b971b8
+    <feature name="sse"/>
b971b8
+    <feature name="sse2"/>
b971b8
+    <feature name="sse4.1"/>
b971b8
+    <feature name="sse4.2"/>
b971b8
+    <feature name="ssse3"/>
b971b8
+    <feature name="stibp"/>
b971b8
+    <feature name="syscall"/>
b971b8
+    <feature name="taa-no"/>
b971b8
+    <feature name="tsc"/>
b971b8
+    <feature name="tsc-deadline"/>
b971b8
+    <feature name="vme"/>
b971b8
+    <feature name="x2apic"/>
b971b8
+    <feature name="xgetbv1"/>
b971b8
+    <feature name="xsave"/>
b971b8
+    <feature name="xsavec"/>
b971b8
+    <feature name="xsaveopt"/>
b971b8
+  </model>
b971b8
+</cpus>
b971b8
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
b971b8
index db5598740c..f169458399 100644
b971b8
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
b971b8
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-guest.xml
b971b8
@@ -1,5 +1,5 @@
b971b8
 <cpu mode='custom' match='exact'>
b971b8
-  <model fallback='forbid'>Cascadelake-Server</model>
b971b8
+  <model fallback='forbid'>Cooperlake</model>
b971b8
   <vendor>Intel</vendor>
b971b8
   <feature policy='require' name='ds'/>
b971b8
   <feature policy='require' name='acpi'/>
b971b8
@@ -20,22 +20,13 @@
b971b8
   <feature policy='require' name='osxsave'/>
b971b8
   <feature policy='require' name='tsc_adjust'/>
b971b8
   <feature policy='require' name='cmt'/>
b971b8
+  <feature policy='require' name='mpx'/>
b971b8
   <feature policy='require' name='intel-pt'/>
b971b8
-  <feature policy='require' name='pku'/>
b971b8
   <feature policy='require' name='ospke'/>
b971b8
   <feature policy='require' name='md-clear'/>
b971b8
-  <feature policy='require' name='stibp'/>
b971b8
-  <feature policy='require' name='arch-capabilities'/>
b971b8
-  <feature policy='require' name='avx512-bf16'/>
b971b8
   <feature policy='require' name='xsaves'/>
b971b8
   <feature policy='require' name='mbm_total'/>
b971b8
   <feature policy='require' name='mbm_local'/>
b971b8
   <feature policy='require' name='invtsc'/>
b971b8
-  <feature policy='require' name='rdctl-no'/>
b971b8
-  <feature policy='require' name='ibrs-all'/>
b971b8
-  <feature policy='require' name='skip-l1dfl-vmentry'/>
b971b8
-  <feature policy='require' name='mds-no'/>
b971b8
-  <feature policy='require' name='pschange-mc-no'/>
b971b8
   <feature policy='require' name='tsx-ctrl'/>
b971b8
-  <feature policy='require' name='taa-no'/>
b971b8
 </cpu>
b971b8
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
b971b8
index 6926b7c975..b0777181bb 100644
b971b8
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
b971b8
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-host.xml
b971b8
@@ -1,6 +1,6 @@
b971b8
 <cpu>
b971b8
   <arch>x86_64</arch>
b971b8
-  <model>Cascadelake-Server</model>
b971b8
+  <model>Cooperlake</model>
b971b8
   <vendor>Intel</vendor>
b971b8
   <feature name='ds'/>
b971b8
   <feature name='acpi'/>
b971b8
@@ -21,22 +21,13 @@
b971b8
   <feature name='osxsave'/>
b971b8
   <feature name='tsc_adjust'/>
b971b8
   <feature name='cmt'/>
b971b8
+  <feature name='mpx'/>
b971b8
   <feature name='intel-pt'/>
b971b8
-  <feature name='pku'/>
b971b8
   <feature name='ospke'/>
b971b8
   <feature name='md-clear'/>
b971b8
-  <feature name='stibp'/>
b971b8
-  <feature name='arch-capabilities'/>
b971b8
-  <feature name='avx512-bf16'/>
b971b8
   <feature name='xsaves'/>
b971b8
   <feature name='mbm_total'/>
b971b8
   <feature name='mbm_local'/>
b971b8
   <feature name='invtsc'/>
b971b8
-  <feature name='rdctl-no'/>
b971b8
-  <feature name='ibrs-all'/>
b971b8
-  <feature name='skip-l1dfl-vmentry'/>
b971b8
-  <feature name='mds-no'/>
b971b8
-  <feature name='pschange-mc-no'/>
b971b8
   <feature name='tsx-ctrl'/>
b971b8
-  <feature name='taa-no'/>
b971b8
 </cpu>
b971b8
diff --git a/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml b/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
b971b8
index fc52805b2f..fb319d547c 100644
b971b8
--- a/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
b971b8
+++ b/tests/cputestdata/x86_64-cpuid-Cooperlake-json.xml
b971b8
@@ -1,24 +1,15 @@
b971b8
 <cpu mode='custom' match='exact'>
b971b8
-  <model fallback='forbid'>Cascadelake-Server</model>
b971b8
+  <model fallback='forbid'>Cooperlake</model>
b971b8
   <vendor>Intel</vendor>
b971b8
   <feature policy='require' name='ss'/>
b971b8
   <feature policy='require' name='vmx'/>
b971b8
   <feature policy='require' name='hypervisor'/>
b971b8
   <feature policy='require' name='tsc_adjust'/>
b971b8
+  <feature policy='require' name='mpx'/>
b971b8
   <feature policy='require' name='umip'/>
b971b8
-  <feature policy='require' name='pku'/>
b971b8
   <feature policy='require' name='md-clear'/>
b971b8
-  <feature policy='require' name='stibp'/>
b971b8
-  <feature policy='require' name='arch-capabilities'/>
b971b8
-  <feature policy='require' name='avx512-bf16'/>
b971b8
   <feature policy='require' name='xsaves'/>
b971b8
   <feature policy='require' name='ibpb'/>
b971b8
   <feature policy='require' name='amd-ssbd'/>
b971b8
-  <feature policy='require' name='rdctl-no'/>
b971b8
-  <feature policy='require' name='ibrs-all'/>
b971b8
-  <feature policy='require' name='skip-l1dfl-vmentry'/>
b971b8
-  <feature policy='require' name='mds-no'/>
b971b8
-  <feature policy='require' name='pschange-mc-no'/>
b971b8
   <feature policy='require' name='tsx-ctrl'/>
b971b8
-  <feature policy='require' name='taa-no'/>
b971b8
 </cpu>
b971b8
diff --git a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
b971b8
index b7e2c8a4fe..7bfd786ff6 100644
b971b8
--- a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
b971b8
+++ b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
b971b8
@@ -93,6 +93,7 @@
b971b8
       <model usable='no'>EPYC-IBPB</model>
b971b8
       <model usable='no'>EPYC</model>
b971b8
       <model usable='no'>Dhyana</model>
b971b8
+      <model usable='no'>Cooperlake</model>
b971b8
       <model usable='yes'>Conroe</model>
b971b8
       <model usable='no'>Cascadelake-Server-noTSX</model>
b971b8
       <model usable='no'>Cascadelake-Server</model>
b971b8
diff --git a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
b971b8
index d634803b29..0a4bb16a89 100644
b971b8
--- a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
b971b8
+++ b/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
b971b8
@@ -101,6 +101,7 @@
b971b8
       <model usable='no'>EPYC-IBPB</model>
b971b8
       <model usable='no'>EPYC</model>
b971b8
       <model usable='no'>Dhyana</model>
b971b8
+      <model usable='no'>Cooperlake</model>
b971b8
       <model usable='yes'>Conroe</model>
b971b8
       <model usable='no'>Cascadelake-Server-noTSX</model>
b971b8
       <model usable='no'>Cascadelake-Server</model>
b971b8
diff --git a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
b971b8
index d2741375b4..d6ee66ab60 100644
b971b8
--- a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
b971b8
+++ b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
b971b8
@@ -92,6 +92,7 @@
b971b8
       <model usable='no'>EPYC-IBPB</model>
b971b8
       <model usable='no'>EPYC</model>
b971b8
       <model usable='no'>Dhyana</model>
b971b8
+      <model usable='no'>Cooperlake</model>
b971b8
       <model usable='yes'>Conroe</model>
b971b8
       <model usable='no'>Cascadelake-Server-noTSX</model>
b971b8
       <model usable='no'>Cascadelake-Server</model>
b971b8
-- 
b971b8
2.26.2
b971b8