Pablo Greco 40546a
From 77ad41e460c2e91f2c2e187c80581069654b741d Mon Sep 17 00:00:00 2001
Pablo Greco 40546a
Message-Id: <77ad41e460c2e91f2c2e187c80581069654b741d@dist-git>
Pablo Greco 40546a
From: Jiri Denemark <Jiri.Denemark@gmail.com>
Pablo Greco 40546a
Date: Fri, 21 Jun 2019 09:25:16 +0200
Pablo Greco 40546a
Subject: [PATCH] cpu_map: Add more signatures for Broadwell CPU models
Pablo Greco 40546a
MIME-Version: 1.0
Pablo Greco 40546a
Content-Type: text/plain; charset=UTF-8
Pablo Greco 40546a
Content-Transfer-Encoding: 8bit
Pablo Greco 40546a
Pablo Greco 40546a
This fixes several CPUs which were incorrectly detected as
Pablo Greco 40546a
Skylake-Client.
Pablo Greco 40546a
Pablo Greco 40546a
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Pablo Greco 40546a
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Pablo Greco 40546a
(cherry picked from commit 4ff74a806ad42820eef3877c8ec146770914d8df)
Pablo Greco 40546a
Pablo Greco 40546a
https://bugzilla.redhat.com/show_bug.cgi?id=1686895
Pablo Greco 40546a
Pablo Greco 40546a
Conflicts:
Pablo Greco 40546a
	src/cpu_map/x86_Broadwell-IBRS.xml
Pablo Greco 40546a
	src/cpu_map/x86_Broadwell-noTSX-IBRS.xml
Pablo Greco 40546a
	src/cpu_map/x86_Broadwell-noTSX.xml
Pablo Greco 40546a
	src/cpu_map/x86_Broadwell.xml
Pablo Greco 40546a
            - cpu_map split not backported
Pablo Greco 40546a
Pablo Greco 40546a
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Pablo Greco 40546a
Message-Id: <543534b544d2d09470c218aeb6c7d945facaf2c8.1561068591.git.jdenemar@redhat.com>
Pablo Greco 40546a
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Pablo Greco 40546a
---
Pablo Greco 40546a
 src/cpu/cpu_map.xml                                  | 12 ++++++++++++
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2623-v4-guest.xml           | 11 +++++++----
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2623-v4-json.xml            | 11 +++++++----
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2630-v4-guest.xml           | 11 +++++++----
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2630-v4-json.xml            | 11 +++++++----
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2650-v4-guest.xml           | 11 +++++++----
Pablo Greco 40546a
 .../x86_64-cpuid-Xeon-E5-2650-v4-json.xml            | 11 +++++++----
Pablo Greco 40546a
 7 files changed, 54 insertions(+), 24 deletions(-)
Pablo Greco 40546a
Pablo Greco 40546a
diff --git a/src/cpu/cpu_map.xml b/src/cpu/cpu_map.xml
Pablo Greco 40546a
index ed6006643b..04369d1eda 100644
Pablo Greco 40546a
--- a/src/cpu/cpu_map.xml
Pablo Greco 40546a
+++ b/src/cpu/cpu_map.xml
Pablo Greco 40546a
@@ -1473,6 +1473,9 @@
Pablo Greco 40546a
 
Pablo Greco 40546a
     <model name='Broadwell-noTSX'>
Pablo Greco 40546a
       <signature family='6' model='61'/> 
Pablo Greco 40546a
+      <signature family='6' model='71'/> 
Pablo Greco 40546a
+      <signature family='6' model='79'/> 
Pablo Greco 40546a
+      <signature family='6' model='86'/> 
Pablo Greco 40546a
       <vendor name='Intel'/>
Pablo Greco 40546a
       <feature name='3dnowprefetch'/>
Pablo Greco 40546a
       <feature name='adx'/>
Pablo Greco 40546a
@@ -1530,6 +1533,9 @@
Pablo Greco 40546a
 
Pablo Greco 40546a
     <model name='Broadwell-noTSX-IBRS'>
Pablo Greco 40546a
       <signature family='6' model='61'/> 
Pablo Greco 40546a
+      <signature family='6' model='71'/> 
Pablo Greco 40546a
+      <signature family='6' model='79'/> 
Pablo Greco 40546a
+      <signature family='6' model='86'/> 
Pablo Greco 40546a
       <vendor name='Intel'/>
Pablo Greco 40546a
       <feature name='3dnowprefetch'/>
Pablo Greco 40546a
       <feature name='adx'/>
Pablo Greco 40546a
@@ -1588,6 +1594,9 @@
Pablo Greco 40546a
 
Pablo Greco 40546a
     <model name='Broadwell'>
Pablo Greco 40546a
       <signature family='6' model='61'/> 
Pablo Greco 40546a
+      <signature family='6' model='71'/> 
Pablo Greco 40546a
+      <signature family='6' model='79'/> 
Pablo Greco 40546a
+      <signature family='6' model='86'/> 
Pablo Greco 40546a
       <vendor name='Intel'/>
Pablo Greco 40546a
       <feature name='3dnowprefetch'/>
Pablo Greco 40546a
       <feature name='adx'/>
Pablo Greco 40546a
@@ -1647,6 +1656,9 @@
Pablo Greco 40546a
 
Pablo Greco 40546a
     <model name='Broadwell-IBRS'>
Pablo Greco 40546a
       <signature family='6' model='61'/> 
Pablo Greco 40546a
+      <signature family='6' model='71'/> 
Pablo Greco 40546a
+      <signature family='6' model='79'/> 
Pablo Greco 40546a
+      <signature family='6' model='86'/> 
Pablo Greco 40546a
       <vendor name='Intel'/>
Pablo Greco 40546a
       <feature name='3dnowprefetch'/>
Pablo Greco 40546a
       <feature name='adx'/>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
Pablo Greco 40546a
index 7718d7ca59..a5c6d9b471 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-guest.xml
Pablo Greco 40546a
@@ -1,6 +1,7 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client-IBRS</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell-IBRS</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ds'/>
Pablo Greco 40546a
   <feature policy='require' name='acpi'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
@@ -18,15 +19,17 @@
Pablo Greco 40546a
   <feature policy='require' name='pdcm'/>
Pablo Greco 40546a
   <feature policy='require' name='dca'/>
Pablo Greco 40546a
   <feature policy='require' name='osxsave'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
   <feature policy='require' name='cmt'/>
Pablo Greco 40546a
   <feature policy='require' name='intel-pt'/>
Pablo Greco 40546a
   <feature policy='require' name='stibp'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_total'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_local'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
   <feature policy='require' name='invtsc'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
Pablo Greco 40546a
index 167a9028ab..de082dbd93 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2623-v4-json.xml
Pablo Greco 40546a
@@ -1,11 +1,14 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client-IBRS</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell-IBRS</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
   <feature policy='require' name='hypervisor'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-guest.xml
Pablo Greco 40546a
index cd7e25b52a..e2999db8e9 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-guest.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-guest.xml
Pablo Greco 40546a
@@ -1,6 +1,7 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ds'/>
Pablo Greco 40546a
   <feature policy='require' name='acpi'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
@@ -18,14 +19,16 @@
Pablo Greco 40546a
   <feature policy='require' name='pdcm'/>
Pablo Greco 40546a
   <feature policy='require' name='dca'/>
Pablo Greco 40546a
   <feature policy='require' name='osxsave'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
   <feature policy='require' name='cmt'/>
Pablo Greco 40546a
   <feature policy='require' name='intel-pt'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_total'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_local'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
   <feature policy='require' name='invtsc'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-json.xml
Pablo Greco 40546a
index 5dfce947b2..5b8891093a 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-json.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2630-v4-json.xml
Pablo Greco 40546a
@@ -1,11 +1,14 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
   <feature policy='require' name='hypervisor'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-guest.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-guest.xml
Pablo Greco 40546a
index cd7e25b52a..e2999db8e9 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-guest.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-guest.xml
Pablo Greco 40546a
@@ -1,6 +1,7 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ds'/>
Pablo Greco 40546a
   <feature policy='require' name='acpi'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
@@ -18,14 +19,16 @@
Pablo Greco 40546a
   <feature policy='require' name='pdcm'/>
Pablo Greco 40546a
   <feature policy='require' name='dca'/>
Pablo Greco 40546a
   <feature policy='require' name='osxsave'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
   <feature policy='require' name='cmt'/>
Pablo Greco 40546a
   <feature policy='require' name='intel-pt'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_total'/>
Pablo Greco 40546a
   <feature policy='require' name='mbm_local'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
   <feature policy='require' name='invtsc'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
diff --git a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-json.xml b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-json.xml
Pablo Greco 40546a
index 5dfce947b2..5b8891093a 100644
Pablo Greco 40546a
--- a/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-json.xml
Pablo Greco 40546a
+++ b/tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-json.xml
Pablo Greco 40546a
@@ -1,11 +1,14 @@
Pablo Greco 40546a
 <cpu mode='custom' match='exact'>
Pablo Greco 40546a
-  <model fallback='forbid'>Skylake-Client</model>
Pablo Greco 40546a
+  <model fallback='forbid'>Broadwell</model>
Pablo Greco 40546a
   <vendor>Intel</vendor>
Pablo Greco 40546a
+  <feature policy='require' name='vme'/>
Pablo Greco 40546a
   <feature policy='require' name='ss'/>
Pablo Greco 40546a
+  <feature policy='require' name='f16c'/>
Pablo Greco 40546a
+  <feature policy='require' name='rdrand'/>
Pablo Greco 40546a
   <feature policy='require' name='hypervisor'/>
Pablo Greco 40546a
+  <feature policy='require' name='arat'/>
Pablo Greco 40546a
   <feature policy='require' name='tsc_adjust'/>
Pablo Greco 40546a
+  <feature policy='require' name='xsaveopt'/>
Pablo Greco 40546a
   <feature policy='require' name='pdpe1gb'/>
Pablo Greco 40546a
-  <feature policy='disable' name='mpx'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xsavec'/>
Pablo Greco 40546a
-  <feature policy='disable' name='xgetbv1'/>
Pablo Greco 40546a
+  <feature policy='require' name='abm'/>
Pablo Greco 40546a
 </cpu>
Pablo Greco 40546a
-- 
Pablo Greco 40546a
2.22.0
Pablo Greco 40546a