[PATCH 25/32] cpu_map: Add versions of IvyBridge CPU model

Jiri Denemark posted 32 patches 2 weeks ago
There is a newer version of this series
[PATCH 25/32] cpu_map: Add versions of IvyBridge 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_IvyBridge-v1.xml              |   6 +
 src/cpu_map/x86_IvyBridge-v2.xml              | 119 ++++++++++++++++++
 .../domaincapsdata/qemu_5.2.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_5.2.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_6.0.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_6.0.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_6.1.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_6.1.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_6.2.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_6.2.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_7.0.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_7.0.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_7.1.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml  |  15 +++
 tests/domaincapsdata/qemu_7.1.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_7.2.0-q35.x86_64.xml  |   9 ++
 .../qemu_7.2.0-tcg.x86_64+hvf.xml             |  11 ++
 .../domaincapsdata/qemu_7.2.0-tcg.x86_64.xml  |  11 ++
 tests/domaincapsdata/qemu_7.2.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_8.0.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_8.0.0-tcg.x86_64.xml  |  11 ++
 tests/domaincapsdata/qemu_8.0.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_8.1.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_8.1.0-tcg.x86_64.xml  |  11 ++
 tests/domaincapsdata/qemu_8.1.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_8.2.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_8.2.0-tcg.x86_64.xml  |  11 ++
 tests/domaincapsdata/qemu_8.2.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_9.0.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_9.0.0-tcg.x86_64.xml  |   9 ++
 tests/domaincapsdata/qemu_9.0.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_9.1.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_9.1.0-tcg.x86_64.xml  |   9 ++
 tests/domaincapsdata/qemu_9.1.0.x86_64.xml    |   9 ++
 .../domaincapsdata/qemu_9.2.0-q35.x86_64.xml  |   9 ++
 .../domaincapsdata/qemu_9.2.0-tcg.x86_64.xml  |   9 ++
 tests/domaincapsdata/qemu_9.2.0.x86_64.xml    |   9 ++
 44 files changed, 535 insertions(+)
 create mode 100644 src/cpu_map/x86_IvyBridge-v1.xml
 create mode 100644 src/cpu_map/x86_IvyBridge-v2.xml

diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
index ab20043839..7ca2ddf24f 100644
--- a/src/cpu_map/index.xml
+++ b/src/cpu_map/index.xml
@@ -37,6 +37,8 @@
       <include filename='x86_SandyBridge-IBRS.xml'/>
       <include filename='x86_IvyBridge.xml'/>
       <include filename='x86_IvyBridge-IBRS.xml'/>
+      <include filename='x86_IvyBridge-v1.xml'/>
+      <include filename='x86_IvyBridge-v2.xml'/>
       <include filename='x86_Haswell-noTSX.xml'/>
       <include filename='x86_Haswell-noTSX-IBRS.xml'/>
       <include filename='x86_Haswell.xml'/>
diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
index e230ade8f0..5f5cbc6049 100644
--- a/src/cpu_map/meson.build
+++ b/src/cpu_map/meson.build
@@ -76,6 +76,8 @@ cpumap_data = [
   'x86_Icelake-Server-v7.xml',
   'x86_Icelake-Server.xml',
   'x86_IvyBridge-IBRS.xml',
+  'x86_IvyBridge-v1.xml',
+  'x86_IvyBridge-v2.xml',
   'x86_IvyBridge.xml',
   'x86_kvm32.xml',
   'x86_kvm64.xml',
diff --git a/src/cpu_map/x86_IvyBridge-v1.xml b/src/cpu_map/x86_IvyBridge-v1.xml
new file mode 100644
index 0000000000..9e5168c2b6
--- /dev/null
+++ b/src/cpu_map/x86_IvyBridge-v1.xml
@@ -0,0 +1,6 @@
+<cpus>
+  <model name='IvyBridge-v1'>
+    <decode host='off' guest='off'/>
+    <model name='IvyBridge'/>
+  </model>
+</cpus>
diff --git a/src/cpu_map/x86_IvyBridge-v2.xml b/src/cpu_map/x86_IvyBridge-v2.xml
new file mode 100644
index 0000000000..ebb5fac980
--- /dev/null
+++ b/src/cpu_map/x86_IvyBridge-v2.xml
@@ -0,0 +1,119 @@
+<cpus>
+  <model name='IvyBridge-v2'>
+    <decode host='on' guest='on'/>
+    <signature family='6' model='58'/>
+    <signature family='6' model='62'/>
+    <vendor name='Intel'/>
+    <feature name='aes'/>
+    <feature name='apic'/>
+    <feature name='arat'/>
+    <feature name='avx'/>
+    <feature name='clflush'/>
+    <feature name='cmov'/>
+    <feature name='cx16'/>
+    <feature name='cx8'/>
+    <feature name='de'/>
+    <feature name='erms'/>
+    <feature name='f16c'/>
+    <feature name='fpu'/>
+    <feature name='fsgsbase'/>
+    <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='rdrand'/>
+    <feature name='rdtscp'/>
+    <feature name='sep'/>
+    <feature name='smep'/>
+    <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='tsc-deadline'/>
+    <feature name='vme'/>
+    <feature name='vmx-activity-hlt'/>
+    <feature name='vmx-apicv-register'/>
+    <feature name='vmx-apicv-vid'/>
+    <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-posted-intr'/>
+    <feature name='vmx-preemption-timer'/>
+    <feature name='vmx-rdpmc-exit'/>
+    <feature name='vmx-rdrand-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'/>
+    <feature name='x2apic'/>
+    <feature name='xsave'/>
+    <feature name='xsaveopt'/>
+  </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 16becefae8..bd4422aa5f 100644
--- a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
@@ -505,6 +505,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 cc6cb95848..c6721abb85 100644
--- a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
@@ -867,6 +867,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
index a8fe2afbbb..a10e7740f6 100644
--- a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
@@ -504,6 +504,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 0dee658c07..6e2e6222cc 100644
--- a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
@@ -514,6 +514,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 09fec2a421..a7dd580356 100644
--- a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
@@ -899,6 +899,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
index 5c0b671e45..5ed0c9529c 100644
--- a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
@@ -513,6 +513,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 e0bf757475..dae0d85c35 100644
--- a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
@@ -578,6 +578,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 e650e29bbe..60e8d82825 100644
--- a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
@@ -1007,6 +1007,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
index f3a10a23aa..bddf6e6757 100644
--- a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
@@ -577,6 +577,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 1695f7946d..f36cfedfac 100644
--- a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
@@ -575,6 +575,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 f51d00d7e2..0e21af4424 100644
--- a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
@@ -1005,6 +1005,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
index af129cd01c..eb9319fa37 100644
--- a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
@@ -574,6 +574,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 1b5edb55b1..7672799710 100644
--- a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
@@ -602,6 +602,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 391d7dfbb3..5611ca2f59 100644
--- a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
@@ -1037,6 +1037,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
index 80a3a03857..fdd12dca3f 100644
--- a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
@@ -601,6 +601,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 821992dc53..1c8d73a488 100644
--- a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
@@ -569,6 +569,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 9765c403bf..6ef4cf615f 100644
--- a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
@@ -985,6 +985,21 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='avx'/>
+        <feature name='f16c'/>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
index 9ae58a319c..69d5e4a073 100644
--- a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
@@ -568,6 +568,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 dcaf7abb7d..6cf5a9e42a 100644
--- a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
@@ -574,6 +574,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 a29ba56a77..55e72d828c 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
@@ -806,6 +806,17 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 a29ba56a77..55e72d828c 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
@@ -806,6 +806,17 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
index fd8f6bc7e7..ee01c70610 100644
--- a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
@@ -573,6 +573,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 c5fa4a166b..dce1fbf450 100644
--- a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
@@ -574,6 +574,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 01786e6e13..9ff9b195a7 100644
--- a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
@@ -806,6 +806,17 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
index 4a0f9e0d96..c13f9b47a5 100644
--- a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
@@ -573,6 +573,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 6e64d60b2c..94fbe72971 100644
--- a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
@@ -712,6 +712,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 5ff608815c..5cf208b8ef 100644
--- a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
@@ -788,6 +788,17 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
index e3ee1af930..e057a438bc 100644
--- a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
@@ -711,6 +711,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 81a0f0c1cd..5e84da10a1 100644
--- a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
@@ -713,6 +713,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 bb6068bfa0..0dace5357c 100644
--- a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
@@ -777,6 +777,17 @@
         <feature name='tsc-deadline'/>
         <feature name='x2apic'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+        <feature name='x2apic'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
index d849aabcba..581f8031ac 100644
--- a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
@@ -712,6 +712,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 7fed542d4c..4b27cd7c85 100644
--- a/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
@@ -713,6 +713,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 3456d79ec4..f95e981ce6 100644
--- a/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
@@ -741,6 +741,15 @@
         <feature name='spec-ctrl'/>
         <feature name='tsc-deadline'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
index 993ead2871..94e7163f68 100644
--- a/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.0.0.x86_64.xml
@@ -712,6 +712,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 9af65c73a3..5cdfa2d270 100644
--- a/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
@@ -746,6 +746,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 ee5a280bdd..608032c706 100644
--- a/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
@@ -766,6 +766,15 @@
         <feature name='spec-ctrl'/>
         <feature name='tsc-deadline'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
index dbb7c7388d..a70874a95b 100644
--- a/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.1.0.x86_64.xml
@@ -745,6 +745,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 0ba696fba8..58ca8e89c0 100644
--- a/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
@@ -746,6 +746,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
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 5bef20b85d..aaaf492439 100644
--- a/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
@@ -766,6 +766,15 @@
         <feature name='spec-ctrl'/>
         <feature name='tsc-deadline'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='tsc-deadline'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='spec-ctrl'/>
+        <feature name='tsc-deadline'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
diff --git a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
index 1bb2263c2c..8fd01d313c 100644
--- a/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_9.2.0.x86_64.xml
@@ -745,6 +745,15 @@
         <feature name='erms'/>
         <feature name='spec-ctrl'/>
       </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v1</model>
+      <blockers model='IvyBridge-v1'>
+        <feature name='erms'/>
+      </blockers>
+      <model usable='no' vendor='Intel'>IvyBridge-v2</model>
+      <blockers model='IvyBridge-v2'>
+        <feature name='erms'/>
+        <feature name='spec-ctrl'/>
+      </blockers>
       <model usable='yes' vendor='Intel'>Nehalem</model>
       <model usable='no' vendor='Intel'>Nehalem-IBRS</model>
       <blockers model='Nehalem-IBRS'>
-- 
2.47.0