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