[PATCH 27/32] cpu_map: Add versions of Westmere CPU model

Jiri Denemark posted 32 patches 2 weeks ago
There is a newer version of this series
[PATCH 27/32] cpu_map: Add versions of Westmere CPU model
Posted by Jiri Denemark 2 weeks ago
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
---
 src/cpu_map/index.xml                         |   2 +
 src/cpu_map/meson.build                       |   2 +
 src/cpu_map/x86_Westmere-v1.xml               |   6 +
 src/cpu_map/x86_Westmere-v2.xml               | 105 ++++++++++++++++++
 .../domaincapsdata/qemu_5.2.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_5.2.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_6.0.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_6.0.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_6.1.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_6.1.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_6.2.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_6.2.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_7.0.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_7.0.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_7.1.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_7.1.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_7.2.0-q35.x86_64.xml  |   5 +
 .../qemu_7.2.0-tcg.x86_64+hvf.xml             |   5 +
 .../domaincapsdata/qemu_7.2.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_7.2.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_8.0.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_8.0.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_8.0.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_8.1.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_8.1.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_8.1.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_8.2.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_8.2.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_8.2.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_9.0.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_9.0.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_9.0.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_9.1.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_9.1.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_9.1.0.x86_64.xml    |   5 +
 .../domaincapsdata/qemu_9.2.0-q35.x86_64.xml  |   5 +
 .../domaincapsdata/qemu_9.2.0-tcg.x86_64.xml  |   5 +
 tests/domaincapsdata/qemu_9.2.0.x86_64.xml    |   5 +
 44 files changed, 315 insertions(+)
 create mode 100644 src/cpu_map/x86_Westmere-v1.xml
 create mode 100644 src/cpu_map/x86_Westmere-v2.xml

diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
index bc9db47c89..7900e6d824 100644
--- a/src/cpu_map/index.xml
+++ b/src/cpu_map/index.xml
@@ -33,6 +33,8 @@
       <include filename='x86_Nehalem-IBRS.xml'/>
       <include filename='x86_Westmere.xml'/>
       <include filename='x86_Westmere-IBRS.xml'/>
+      <include filename='x86_Westmere-v1.xml'/>
+      <include filename='x86_Westmere-v2.xml'/>
       <include filename='x86_SandyBridge.xml'/>
       <include filename='x86_SandyBridge-IBRS.xml'/>
       <include filename='x86_SandyBridge-v1.xml'/>
diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
index de1eb8efbd..474f43fad5 100644
--- a/src/cpu_map/meson.build
+++ b/src/cpu_map/meson.build
@@ -129,6 +129,8 @@ cpumap_data = [
   'x86_Snowridge.xml',
   'x86_vendors.xml',
   'x86_Westmere-IBRS.xml',
+  'x86_Westmere-v1.xml',
+  'x86_Westmere-v2.xml',
   'x86_Westmere.xml',
 ]
 
diff --git a/src/cpu_map/x86_Westmere-v1.xml b/src/cpu_map/x86_Westmere-v1.xml
new file mode 100644
index 0000000000..723a1d0242
--- /dev/null
+++ b/src/cpu_map/x86_Westmere-v1.xml
@@ -0,0 +1,6 @@
+<cpus>
+  <model name='Westmere-v1'>
+    <decode host='off' guest='off'/>
+    <model name='Westmere'/>
+  </model>
+</cpus>
diff --git a/src/cpu_map/x86_Westmere-v2.xml b/src/cpu_map/x86_Westmere-v2.xml
new file mode 100644
index 0000000000..07c52ff6df
--- /dev/null
+++ b/src/cpu_map/x86_Westmere-v2.xml
@@ -0,0 +1,105 @@
+<cpus>
+  <model name='Westmere-v2'>
+    <decode host='on' guest='on'/>
+    <signature family='6' model='44'/>
+    <signature family='6' model='47'/>
+    <signature family='6' model='37'/>
+    <vendor name='Intel'/>
+    <feature name='aes'/>
+    <feature name='apic'/>
+    <feature name='arat'/>
+    <feature name='clflush'/>
+    <feature name='cmov'/>
+    <feature name='cx16'/>
+    <feature name='cx8'/>
+    <feature name='de'/>
+    <feature name='fpu'/>
+    <feature name='fxsr'/>
+    <feature name='lahf_lm'/>
+    <feature name='lm'/>
+    <feature name='mca'/>
+    <feature name='mce'/>
+    <feature name='mmx'/>
+    <feature name='msr'/>
+    <feature name='mtrr'/>
+    <feature name='nx'/>
+    <feature name='pae'/>
+    <feature name='pat'/>
+    <feature name='pclmuldq'/>
+    <feature name='pge'/>
+    <feature name='pni'/>
+    <feature name='popcnt'/>
+    <feature name='pse'/>
+    <feature name='pse36'/>
+    <feature name='sep'/>
+    <feature name='spec-ctrl'/>
+    <feature name='sse'/>
+    <feature name='sse2'/>
+    <feature name='sse4.1'/>
+    <feature name='sse4.2'/>
+    <feature name='ssse3'/>
+    <feature name='syscall'/>
+    <feature name='tsc'/>
+    <feature name='vme'/>
+    <feature name='vmx-activity-hlt'/>
+    <feature name='vmx-apicv-x2apic'/>
+    <feature name='vmx-apicv-xapic'/>
+    <feature name='vmx-cr3-load-noexit'/>
+    <feature name='vmx-cr3-store-noexit'/>
+    <feature name='vmx-cr8-load-exit'/>
+    <feature name='vmx-cr8-store-exit'/>
+    <feature name='vmx-desc-exit'/>
+    <feature name='vmx-entry-ia32e-mode'/>
+    <feature name='vmx-entry-load-efer'/>
+    <feature name='vmx-entry-load-pat'/>
+    <feature name='vmx-entry-load-perf-global-ctrl'/>
+    <feature name='vmx-entry-noload-debugctl'/>
+    <feature name='vmx-ept'/>
+    <feature name='vmx-ept-1gb'/>
+    <feature name='vmx-ept-2mb'/>
+    <feature name='vmx-ept-execonly'/>
+    <feature name='vmx-exit-ack-intr'/>
+    <feature name='vmx-exit-load-efer'/>
+    <feature name='vmx-exit-load-pat'/>
+    <feature name='vmx-exit-load-perf-global-ctrl'/>
+    <feature name='vmx-exit-nosave-debugctl'/>
+    <feature name='vmx-exit-save-efer'/>
+    <feature name='vmx-exit-save-pat'/>
+    <feature name='vmx-exit-save-preemption-timer'/>
+    <feature name='vmx-flexpriority'/>
+    <feature name='vmx-hlt-exit'/>
+    <feature name='vmx-ins-outs'/>
+    <feature name='vmx-intr-exit'/>
+    <feature name='vmx-invept'/>
+    <feature name='vmx-invept-all-context'/>
+    <feature name='vmx-invept-single-context'/>
+    <feature name='vmx-invlpg-exit'/>
+    <feature name='vmx-invvpid-all-context'/>
+    <feature name='vmx-invvpid-single-addr'/>
+    <feature name='vmx-invvpid-single-context-noglobals'/>
+    <feature name='vmx-io-bitmap'/>
+    <feature name='vmx-io-exit'/>
+    <feature name='vmx-monitor-exit'/>
+    <feature name='vmx-movdr-exit'/>
+    <feature name='vmx-msr-bitmap'/>
+    <feature name='vmx-mtf'/>
+    <feature name='vmx-mwait-exit'/>
+    <feature name='vmx-nmi-exit'/>
+    <feature name='vmx-page-walk-4'/>
+    <feature name='vmx-pause-exit'/>
+    <feature name='vmx-preemption-timer'/>
+    <feature name='vmx-rdpmc-exit'/>
+    <feature name='vmx-rdtsc-exit'/>
+    <feature name='vmx-rdtscp-exit'/>
+    <feature name='vmx-secondary-ctls'/>
+    <feature name='vmx-store-lma'/>
+    <feature name='vmx-true-ctls'/>
+    <feature name='vmx-tsc-offset'/>
+    <feature name='vmx-unrestricted-guest'/>
+    <feature name='vmx-vintr-pending'/>
+    <feature name='vmx-vnmi'/>
+    <feature name='vmx-vnmi-pending'/>
+    <feature name='vmx-vpid'/>
+    <feature name='vmx-wbinvd-exit'/>
+  </model>
+</cpus>
diff --git a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
index 605aa866e1..6932895110 100644
--- a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
@@ -729,6 +729,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
index 01af090ce9..d4a5b2c3b8 100644
--- a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
@@ -1245,6 +1245,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
index 243cbfe504..980c940883 100644
--- a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
@@ -728,6 +728,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
index f33fffe78b..cfa1740854 100644
--- a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
@@ -738,6 +738,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
index b7d51223ab..f409f19159 100644
--- a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
@@ -1277,6 +1277,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
index 6ecbe63dce..a176cde6d9 100644
--- a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
@@ -737,6 +737,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
index e5a90a82bd..ac6d662afc 100644
--- a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
@@ -833,6 +833,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
index bfe8224c26..7259db82c8 100644
--- a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
@@ -1442,6 +1442,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
index 8318dd3774..682fff3b61 100644
--- a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
@@ -832,6 +832,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
index 0e44868d46..5592787eed 100644
--- a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
@@ -839,6 +839,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
index 877e135343..6dbcc900a8 100644
--- a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
@@ -1458,6 +1458,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
index 25c057ccbf..8dcfb48a09 100644
--- a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
@@ -838,6 +838,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
index 57fff049c8..7e837256e3 100644
--- a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
@@ -866,6 +866,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
index 54635c84ac..24e0046d6b 100644
--- a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
@@ -1485,6 +1485,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
index 2ad9f0b60c..9e9651e449 100644
--- a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
@@ -865,6 +865,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
index 20d87fa75c..23e4204b47 100644
--- a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
@@ -833,6 +833,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
index 769be5f99a..0ce088e308 100644
--- a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
@@ -1433,6 +1433,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
index 2b768d9258..7f42c7fb84 100644
--- a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
@@ -832,6 +832,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
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 576ca119a6..60c032ddd2 100644
--- a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
@@ -838,6 +838,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
index 9abf3506bf..908d2a1b52 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
@@ -1182,6 +1182,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
index 9abf3506bf..908d2a1b52 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
@@ -1182,6 +1182,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
index 1d294bdd06..c41076c48f 100644
--- a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
@@ -837,6 +837,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
index fc0c9d320b..7b88e5d27c 100644
--- a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
@@ -920,6 +920,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
index d1a6270237..0834c1ac06 100644
--- a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
@@ -1278,6 +1278,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
index b61b7dbddb..f4e878dd40 100644
--- a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
@@ -919,6 +919,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
index d225ecae4b..381a048f1b 100644
--- a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
@@ -1109,6 +1109,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
index caaf0dfe84..928aede1c5 100644
--- a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
@@ -1236,6 +1236,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
index 6ef35d465b..c727d391e4 100644
--- a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
@@ -1108,6 +1108,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
index f912d65ff5..454040f6a8 100644
--- a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
@@ -1110,6 +1110,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
index 76b4853af6..9ee0bedc51 100644
--- a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
@@ -1217,6 +1217,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
index f9d96fb8fe..0f706b8b5f 100644
--- a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
@@ -1109,6 +1109,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
index 6d371660ce..0f5b7cd5a2 100644
--- a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
@@ -1110,6 +1110,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
index b4f8542b55..d7b182f43e 100644
--- a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
@@ -1152,6 +1152,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
index 463478f13d..aafdd4e359 100644
--- a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
@@ -1109,6 +1109,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
index fd509ca52c..888a02a420 100644
--- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
@@ -1246,6 +1246,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
index 7d95b9c32f..26431fc647 100644
--- a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
@@ -1257,6 +1257,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
index 937b6671ef..7eb449b9e2 100644
--- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
@@ -1245,6 +1245,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml b/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
index be67479619..730d8e9e26 100644
--- a/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
@@ -1246,6 +1246,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
diff --git a/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml b/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
index fa183e1394..d98ab20f88 100644
--- a/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
@@ -1257,6 +1257,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='AMD'>athlon</model>
       <model usable='yes' vendor='Intel'>core2duo</model>
       <model usable='yes' vendor='Intel'>coreduo</model>
diff --git a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
index ac21366d12..558415500f 100644
--- a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
@@ -1245,6 +1245,11 @@
       <blockers model='Westmere-IBRS'>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='yes' vendor='Intel'>Westmere-v1</model>
+      <model usable='no' vendor='Intel'>Westmere-v2</model>
+      <blockers model='Westmere-v2'>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='no' vendor='AMD'>athlon</model>
       <blockers model='athlon'>
         <feature name='3dnow'/>
-- 
2.47.0