---
src/cpu_map/index.xml | 6 +
src/cpu_map/meson.build | 6 +
src/cpu_map/x86_EPYC-IBPB.xml | 1 +
src/cpu_map/x86_EPYC-Milan-v2.xml | 108 ++++++++++++++++++
src/cpu_map/x86_EPYC-Milan.xml | 1 +
src/cpu_map/x86_EPYC-Rome-v2.xml | 93 +++++++++++++++
src/cpu_map/x86_EPYC-Rome-v3.xml | 95 +++++++++++++++
src/cpu_map/x86_EPYC-Rome-v4.xml | 94 +++++++++++++++
src/cpu_map/x86_EPYC-Rome.xml | 1 +
src/cpu_map/x86_EPYC-v3.xml | 87 ++++++++++++++
src/cpu_map/x86_EPYC-v4.xml | 88 ++++++++++++++
src/cpu_map/x86_EPYC.xml | 1 +
.../x86_64-cpuid-EPYC-7502-32-Core-host.xml | 4 +-
.../x86_64-cpuid-EPYC-7601-32-Core-guest.xml | 7 +-
...6_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml | 6 +-
...4-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml | 7 +-
.../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_7.2.0-q35.x86_64.xml | 2 +
.../qemu_7.2.0-tcg.x86_64+hvf.xml | 2 +
.../domaincapsdata/qemu_7.2.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_7.2.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.0.0-q35.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.0.0-tcg.x86_64.xml | 2 +
tests/domaincapsdata/qemu_8.0.0.x86_64.xml | 2 +
.../domaincapsdata/qemu_8.1.0-q35.x86_64.xml | 11 +-
.../domaincapsdata/qemu_8.1.0-tcg.x86_64.xml | 6 +
tests/domaincapsdata/qemu_8.1.0.x86_64.xml | 11 +-
.../domaincapsdata/qemu_8.2.0-q35.x86_64.xml | 11 +-
.../domaincapsdata/qemu_8.2.0-tcg.x86_64.xml | 6 +
tests/domaincapsdata/qemu_8.2.0.x86_64.xml | 11 +-
.../cpu-host-model.x86_64-latest.args | 2 +-
54 files changed, 685 insertions(+), 31 deletions(-)
create mode 100644 src/cpu_map/x86_EPYC-Milan-v2.xml
create mode 100644 src/cpu_map/x86_EPYC-Rome-v2.xml
create mode 100644 src/cpu_map/x86_EPYC-Rome-v3.xml
create mode 100644 src/cpu_map/x86_EPYC-Rome-v4.xml
create mode 100644 src/cpu_map/x86_EPYC-v3.xml
create mode 100644 src/cpu_map/x86_EPYC-v4.xml
diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
index d2c5af5797..861edc3bb7 100644
--- a/src/cpu_map/index.xml
+++ b/src/cpu_map/index.xml
@@ -67,9 +67,15 @@
<include filename='x86_Opteron_G4.xml'/>
<include filename='x86_Opteron_G5.xml'/>
<include filename='x86_EPYC.xml'/>
+ <include filename='x86_EPYC-v3.xml'/>
+ <include filename='x86_EPYC-v4.xml'/>
<include filename='x86_EPYC-IBPB.xml'/>
<include filename='x86_EPYC-Rome.xml'/>
+ <include filename='x86_EPYC-Rome-v2.xml'/>
+ <include filename='x86_EPYC-Rome-v3.xml'/>
+ <include filename='x86_EPYC-Rome-v4.xml'/>
<include filename='x86_EPYC-Milan.xml'/>
+ <include filename='x86_EPYC-Milan-v2.xml'/>
<include filename='x86_EPYC-Genoa.xml'/>
<!-- Hygon CPU models -->
diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
index ae5293e85f..68e093e041 100644
--- a/src/cpu_map/meson.build
+++ b/src/cpu_map/meson.build
@@ -39,8 +39,14 @@ cpumap_data = [
'x86_Dhyana.xml',
'x86_EPYC-IBPB.xml',
'x86_EPYC.xml',
+ 'x86_EPYC-v3.xml',
+ 'x86_EPYC-v4.xml',
'x86_EPYC-Genoa.xml',
+ 'x86_EPYC-Milan-v2.xml',
'x86_EPYC-Milan.xml',
+ 'x86_EPYC-Rome-v2.xml',
+ 'x86_EPYC-Rome-v3.xml',
+ 'x86_EPYC-Rome-v4.xml',
'x86_EPYC-Rome.xml',
'x86_features.xml',
'x86_Haswell-IBRS.xml',
diff --git a/src/cpu_map/x86_EPYC-IBPB.xml b/src/cpu_map/x86_EPYC-IBPB.xml
index 25cba0c0ab..f93dc29213 100644
--- a/src/cpu_map/x86_EPYC-IBPB.xml
+++ b/src/cpu_map/x86_EPYC-IBPB.xml
@@ -1,5 +1,6 @@
<cpus>
<model name='EPYC-IBPB'>
+ <alias name='EPYC-v2'/>
<decode host='on' guest='on'/>
<signature family='23' model='1'/> <!-- 800f10 -->
<vendor name='AMD'/>
diff --git a/src/cpu_map/x86_EPYC-Milan-v2.xml b/src/cpu_map/x86_EPYC-Milan-v2.xml
new file mode 100644
index 0000000000..4cadba2325
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-Milan-v2.xml
@@ -0,0 +1,108 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '1'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC-Milan Processor'
+ 'model.cache_info': '&epyc_milan_cache_info'
+ 'property.model-id': 'AMD EPYC-Milan-v2 Processor'
+ 'version.cache_info': '&epyc_milan_v2_cache_info'
+-->
+<cpus>
+ <model name='EPYC-Milan-v2'>
+ <decode host='on' guest='on'/>
+ <signature family='25' model='1'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='amd-psfd'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clwb'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='erms'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fsrm'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='invpcid'/>
+ <feature name='lahf_lm'/>
+ <feature name='lfence-always-serializing'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='no-nested-data-bp'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='null-sel-clr-base'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pcid'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pku'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdpid'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='stibp-always-on'/>
+ <feature name='svm'/>
+ <feature name='svme-addr-chk'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='umip'/>
+ <feature name='vaes'/>
+ <feature name='vme'/>
+ <feature name='vpclmulqdq'/>
+ <feature name='wbnoinvd'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC-Milan.xml b/src/cpu_map/x86_EPYC-Milan.xml
index 3055e175fa..5163469256 100644
--- a/src/cpu_map/x86_EPYC-Milan.xml
+++ b/src/cpu_map/x86_EPYC-Milan.xml
@@ -1,5 +1,6 @@
<cpus>
<model name='EPYC-Milan'>
+ <alias name='EPYC-Milan-v1'/>
<decode host='on' guest='on'/>
<signature family='25' model='1'/>
<vendor name='AMD'/>
diff --git a/src/cpu_map/x86_EPYC-Rome-v2.xml b/src/cpu_map/x86_EPYC-Rome-v2.xml
new file mode 100644
index 0000000000..0cade90cdc
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-Rome-v2.xml
@@ -0,0 +1,93 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '0'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC-Rome Processor'
+ 'model.cache_info': '&epyc_rome_cache_info'
+-->
+<cpus>
+ <model name='EPYC-Rome-v2'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='49'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clwb'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdpid'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='umip'/>
+ <feature name='vme'/>
+ <feature name='wbnoinvd'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC-Rome-v3.xml b/src/cpu_map/x86_EPYC-Rome-v3.xml
new file mode 100644
index 0000000000..6b8f07c7f2
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-Rome-v3.xml
@@ -0,0 +1,95 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '0'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC-Rome Processor'
+ 'model.cache_info': '&epyc_rome_cache_info'
+ 'property.model-id': 'AMD EPYC-Rome-v3 Processor'
+ 'version.cache_info': '&epyc_rome_v3_cache_info'
+-->
+<cpus>
+ <model name='EPYC-Rome-v3'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='49'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clwb'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdpid'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='umip'/>
+ <feature name='vme'/>
+ <feature name='wbnoinvd'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC-Rome-v4.xml b/src/cpu_map/x86_EPYC-Rome-v4.xml
new file mode 100644
index 0000000000..e69f910e56
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-Rome-v4.xml
@@ -0,0 +1,94 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '0'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC-Rome Processor'
+ 'model.cache_info': '&epyc_rome_cache_info'
+ 'property.model-id': 'AMD EPYC-Rome-v4 Processor (no XSAVES)'
+ 'version.cache_info': '&epyc_rome_v3_cache_info'
+-->
+<cpus>
+ <model name='EPYC-Rome-v4'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='49'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='amd-ssbd'/>
+ <feature name='amd-stibp'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clwb'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='ibrs'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdpid'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='umip'/>
+ <feature name='vme'/>
+ <feature name='wbnoinvd'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC-Rome.xml b/src/cpu_map/x86_EPYC-Rome.xml
index 2b5744312b..7b42442a1e 100644
--- a/src/cpu_map/x86_EPYC-Rome.xml
+++ b/src/cpu_map/x86_EPYC-Rome.xml
@@ -1,5 +1,6 @@
<cpus>
<model name='EPYC-Rome'>
+ <alias name='EPYC-Rome-v1'/>
<decode host='on' guest='on'/>
<signature family='23' model='49'/>
<vendor name='AMD'/>
diff --git a/src/cpu_map/x86_EPYC-v3.xml b/src/cpu_map/x86_EPYC-v3.xml
new file mode 100644
index 0000000000..fb587218c7
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-v3.xml
@@ -0,0 +1,87 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '2'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC Processor'
+ 'model.cache_info': '&epyc_cache_info'
+ 'property.model-id': 'AMD EPYC Processor'
+-->
+<cpus>
+ <model name='EPYC-v3'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='1'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='vme'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC-v4.xml b/src/cpu_map/x86_EPYC-v4.xml
new file mode 100644
index 0000000000..e714d9e622
--- /dev/null
+++ b/src/cpu_map/x86_EPYC-v4.xml
@@ -0,0 +1,88 @@
+<!-- extra info from qemu:
+ 'model.level': '0xd'
+ 'model.stepping': '2'
+ 'model.xlevel': '0x8000001E'
+ 'model.model_id': 'AMD EPYC Processor'
+ 'model.cache_info': '&epyc_cache_info'
+ 'property.model-id': 'AMD EPYC-v4 Processor'
+ 'version.cache_info': '&epyc_v4_cache_info'
+-->
+<cpus>
+ <model name='EPYC-v4'>
+ <decode host='on' guest='on'/>
+ <signature family='23' model='1'/>
+ <vendor name='AMD'/>
+ <feature name='3dnowprefetch'/>
+ <feature name='abm'/>
+ <feature name='adx'/>
+ <feature name='aes'/>
+ <feature name='apic'/>
+ <feature name='arat'/>
+ <feature name='avx'/>
+ <feature name='avx2'/>
+ <feature name='bmi1'/>
+ <feature name='bmi2'/>
+ <feature name='clflush'/>
+ <feature name='clflushopt'/>
+ <feature name='clzero'/>
+ <feature name='cmov'/>
+ <feature name='cr8legacy'/>
+ <feature name='cx16'/>
+ <feature name='cx8'/>
+ <feature name='de'/>
+ <feature name='f16c'/>
+ <feature name='fma'/>
+ <feature name='fpu'/>
+ <feature name='fsgsbase'/>
+ <feature name='fxsr'/>
+ <feature name='fxsr_opt'/>
+ <feature name='ibpb'/>
+ <feature name='lahf_lm'/>
+ <feature name='lm'/>
+ <feature name='mca'/>
+ <feature name='mce'/>
+ <feature name='misalignsse'/>
+ <feature name='mmx'/>
+ <feature name='mmxext'/>
+ <feature name='movbe'/>
+ <feature name='msr'/>
+ <feature name='mtrr'/>
+ <feature name='npt'/>
+ <feature name='nrip-save'/>
+ <feature name='nx'/>
+ <feature name='osvw'/>
+ <feature name='pae'/>
+ <feature name='pat'/>
+ <feature name='pclmuldq'/>
+ <feature name='pdpe1gb'/>
+ <feature name='perfctr_core'/>
+ <feature name='pge'/>
+ <feature name='pni'/>
+ <feature name='popcnt'/>
+ <feature name='pse'/>
+ <feature name='pse36'/>
+ <feature name='rdrand'/>
+ <feature name='rdseed'/>
+ <feature name='rdtscp'/>
+ <feature name='sep'/>
+ <feature name='sha-ni'/>
+ <feature name='smap'/>
+ <feature name='smep'/>
+ <feature name='sse'/>
+ <feature name='sse2'/>
+ <feature name='sse4.1'/>
+ <feature name='sse4.2'/>
+ <feature name='sse4a'/>
+ <feature name='ssse3'/>
+ <feature name='svm'/>
+ <feature name='syscall'/>
+ <feature name='tsc'/>
+ <feature name='vme'/>
+ <feature name='xgetbv1'/>
+ <feature name='xsave'/>
+ <feature name='xsavec'/>
+ <feature name='xsaveerptr'/>
+ <feature name='xsaveopt'/>
+ <feature name='xsaves'/>
+ </model>
+</cpus>
diff --git a/src/cpu_map/x86_EPYC.xml b/src/cpu_map/x86_EPYC.xml
index 07319e182c..38096fce1c 100644
--- a/src/cpu_map/x86_EPYC.xml
+++ b/src/cpu_map/x86_EPYC.xml
@@ -1,5 +1,6 @@
<cpus>
<model name='EPYC'>
+ <alias name='EPYC-v1'/>
<decode host='on' guest='on'/>
<signature family='23' model='1'/> <!-- 800f10 -->
<vendor name='AMD'/>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
index 3c9bb5854b..c9ad653497 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7502-32-Core-host.xml
@@ -1,6 +1,6 @@
<cpu>
<arch>x86_64</arch>
- <model>EPYC-Rome</model>
+ <model>EPYC-Rome-v3</model>
<vendor>AMD</vendor>
<signature family='23' model='49' stepping='0'/>
<feature name='ht'/>
@@ -18,8 +18,6 @@
<feature name='topoext'/>
<feature name='perfctr_nb'/>
<feature name='invtsc'/>
- <feature name='ibrs'/>
- <feature name='amd-ssbd'/>
<feature name='lbrv'/>
<feature name='svm-lock'/>
<feature name='tsc-scale'/>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
index 770b83a9f4..f3e5164efc 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-guest.xml
@@ -1,21 +1,17 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>EPYC</model>
+ <model fallback='forbid'>EPYC-v4</model>
<vendor>AMD</vendor>
<feature policy='require' name='ht'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='osxsave'/>
- <feature policy='require' name='xsaves'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='extapic'/>
<feature policy='require' name='skinit'/>
<feature policy='require' name='wdt'/>
<feature policy='require' name='tce'/>
<feature policy='require' name='topoext'/>
- <feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='clzero'/>
- <feature policy='require' name='xsaveerptr'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='svm-lock'/>
<feature policy='require' name='tsc-scale'/>
@@ -27,4 +23,5 @@
<feature policy='require' name='avic'/>
<feature policy='require' name='v-vmsave-vmload'/>
<feature policy='require' name='vgif'/>
+ <feature policy='disable' name='ibpb'/>
</cpu>
diff --git a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
index 057d202285..1a6ecf839e 100644
--- a/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
+++ b/tests/cputestdata/x86_64-cpuid-EPYC-7601-32-Core-ibpb-host.xml
@@ -1,23 +1,19 @@
<cpu>
<arch>x86_64</arch>
- <model>EPYC-IBPB</model>
+ <model>EPYC-v4</model>
<vendor>AMD</vendor>
<signature family='23' model='1' stepping='2'/>
<feature name='ht'/>
<feature name='monitor'/>
<feature name='osxsave'/>
- <feature name='xsaves'/>
<feature name='cmp_legacy'/>
<feature name='extapic'/>
<feature name='skinit'/>
<feature name='wdt'/>
<feature name='tce'/>
<feature name='topoext'/>
- <feature name='perfctr_core'/>
<feature name='perfctr_nb'/>
<feature name='invtsc'/>
- <feature name='clzero'/>
- <feature name='xsaveerptr'/>
<feature name='lbrv'/>
<feature name='svm-lock'/>
<feature name='tsc-scale'/>
diff --git a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
index 770b83a9f4..f3e5164efc 100644
--- a/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
+++ b/tests/cputestdata/x86_64-cpuid-Ryzen-7-1800X-Eight-Core-guest.xml
@@ -1,21 +1,17 @@
<cpu mode='custom' match='exact'>
- <model fallback='forbid'>EPYC</model>
+ <model fallback='forbid'>EPYC-v4</model>
<vendor>AMD</vendor>
<feature policy='require' name='ht'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='osxsave'/>
- <feature policy='require' name='xsaves'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='extapic'/>
<feature policy='require' name='skinit'/>
<feature policy='require' name='wdt'/>
<feature policy='require' name='tce'/>
<feature policy='require' name='topoext'/>
- <feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='clzero'/>
- <feature policy='require' name='xsaveerptr'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='svm-lock'/>
<feature policy='require' name='tsc-scale'/>
@@ -27,4 +23,5 @@
<feature policy='require' name='avic'/>
<feature policy='require' name='v-vmsave-vmload'/>
<feature policy='require' name='vgif'/>
+ <feature policy='disable' name='ibpb'/>
</cpu>
diff --git a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
index f17a775344..f5da971e3b 100644
--- a/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
@@ -102,6 +102,7 @@
<model usable='yes'
vendor='Intel'>Haswell-noTSX</model>
<model usable='yes'
vendor='Intel'>Haswell-IBRS</model>
<model usable='yes' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
index 7b7420ff8e..01906a6277 100644
--- a/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.0.0-tcg.x86_64.xml
@@ -115,6 +115,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
index a2e5dc2be4..83d6cece2e 100644
--- a/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.0.0.x86_64.xml
@@ -101,6 +101,7 @@
<model usable='yes'
vendor='Intel'>Haswell-noTSX</model>
<model usable='yes'
vendor='Intel'>Haswell-IBRS</model>
<model usable='yes' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
b/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
index 4ab5bedc1e..6ec2e69978 100644
--- a/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.1.0-q35.x86_64.xml
@@ -102,6 +102,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml
b/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml
index 272d9bed08..a2bce1003a 100644
--- a/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.1.0-tcg.x86_64.xml
@@ -115,6 +115,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
index 499fa38c1d..751303eaa5 100644
--- a/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.1.0.x86_64.xml
@@ -101,6 +101,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC</model>
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 8b20641da1..587aae9791 100644
--- a/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-q35.x86_64.xml
@@ -102,6 +102,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC</model>
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 526f39254e..af223af1b8 100644
--- a/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0-tcg.x86_64.xml
@@ -115,6 +115,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC</model>
diff --git a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
index 57d031b7ec..687684fc4d 100644
--- a/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_5.2.0.x86_64.xml
@@ -101,6 +101,7 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='yes' vendor='AMD'>EPYC</model>
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 0da06a9499..9b5b0cfc18 100644
--- a/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-q35.x86_64.xml
@@ -102,6 +102,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 0ffd95aee6..1a00383168 100644
--- a/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0-tcg.x86_64.xml
@@ -116,6 +116,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
index a2c2f2f56f..8a9dd7ef89 100644
--- a/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.0.0.x86_64.xml
@@ -101,6 +101,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 d88d709fe2..54db281b89 100644
--- a/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-q35.x86_64.xml
@@ -103,6 +103,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 a80c86df4f..5762bc0b90 100644
--- a/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0-tcg.x86_64.xml
@@ -116,6 +116,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
index 2187958750..dcbcc03737 100644
--- a/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.1.0.x86_64.xml
@@ -102,6 +102,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 1f3a0c70ee..a7f4bc2f6d 100644
--- a/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-q35.x86_64.xml
@@ -103,6 +103,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 7ed62fb522..f90c826e27 100644
--- a/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0-tcg.x86_64.xml
@@ -118,6 +118,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
index f83ba1a949..2a9a199a82 100644
--- a/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_6.2.0.x86_64.xml
@@ -102,6 +102,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 dbf5decd19..6d927f7d43 100644
--- a/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
@@ -104,6 +104,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 3a71b54847..7ef5615473 100644
--- a/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
@@ -119,6 +119,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
index c17c72061e..d85ae46574 100644
--- a/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.0.0.x86_64.xml
@@ -103,6 +103,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 7905d6ddd5..655b151c9f 100644
--- a/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
@@ -103,6 +103,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 1ae2a7c342..df0d5c1b86 100644
--- a/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
@@ -117,6 +117,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
index 65ac2414c8..ff960b5747 100644
--- a/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.1.0.x86_64.xml
@@ -102,6 +102,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 7a9ef1ffaa..c6e45a4f70 100644
--- a/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
@@ -108,6 +108,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 ab7a3df9f3..b3670c108a 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
@@ -105,6 +105,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</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 ab7a3df9f3..b3670c108a 100644
--- a/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
@@ -105,6 +105,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
index f5ffc76a9c..6d18366f76 100644
--- a/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_7.2.0.x86_64.xml
@@ -107,6 +107,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 2e6f13d873..0637e07f1c 100644
--- a/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
@@ -109,6 +109,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 404a6fcdad..02d30c3a5e 100644
--- a/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
@@ -110,6 +110,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
diff --git a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
index 65740c2a27..6a9c7da907 100644
--- a/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.0.0.x86_64.xml
@@ -108,6 +108,8 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='yes' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='yes' vendor='AMD'>EPYC-Rome</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
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 4d438efdf7..d865028850 100644
--- a/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
@@ -41,7 +41,7 @@
</enum>
</mode>
<mode name='host-model' supported='yes'>
- <model fallback='forbid'>EPYC-Rome</model>
+ <model fallback='forbid'>EPYC-Rome-v4</model>
<vendor>AMD</vendor>
<maxphysaddr mode='passthrough' limit='64'/>
<feature policy='require' name='x2apic'/>
@@ -53,7 +53,6 @@
<feature policy='require' name='ssbd'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='virt-ssbd'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='tsc-scale'/>
@@ -69,7 +68,7 @@
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
- <feature policy='disable' name='xsaves'/>
+ <feature policy='disable' name='ibrs'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>
@@ -112,7 +111,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
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 2ddb945e37..e64635ec76 100644
--- a/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
@@ -111,7 +111,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
diff --git a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
index 919357e577..51cba16a35 100644
--- a/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.1.0.x86_64.xml
@@ -40,7 +40,7 @@
</enum>
</mode>
<mode name='host-model' supported='yes'>
- <model fallback='forbid'>EPYC-Rome</model>
+ <model fallback='forbid'>EPYC-Rome-v4</model>
<vendor>AMD</vendor>
<maxphysaddr mode='passthrough' limit='64'/>
<feature policy='require' name='x2apic'/>
@@ -52,7 +52,6 @@
<feature policy='require' name='ssbd'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='virt-ssbd'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='tsc-scale'/>
@@ -68,7 +67,7 @@
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
- <feature policy='disable' name='xsaves'/>
+ <feature policy='disable' name='ibrs'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>
@@ -111,7 +110,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
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 bb3578d5d7..f40185ead0 100644
--- a/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
@@ -41,7 +41,7 @@
</enum>
</mode>
<mode name='host-model' supported='yes'>
- <model fallback='forbid'>EPYC-Rome</model>
+ <model fallback='forbid'>EPYC-Rome-v4</model>
<vendor>AMD</vendor>
<maxphysaddr mode='passthrough' limit='64'/>
<feature policy='require' name='x2apic'/>
@@ -53,7 +53,6 @@
<feature policy='require' name='ssbd'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='virt-ssbd'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='tsc-scale'/>
@@ -69,7 +68,7 @@
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
- <feature policy='disable' name='xsaves'/>
+ <feature policy='disable' name='ibrs'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>
@@ -112,7 +111,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
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 5752d3cdc9..b04dfdb914 100644
--- a/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
@@ -111,7 +111,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='no' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
diff --git a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
index 1be5ff2c93..900982f97d 100644
--- a/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
+++ b/tests/domaincapsdata/qemu_8.2.0.x86_64.xml
@@ -40,7 +40,7 @@
</enum>
</mode>
<mode name='host-model' supported='yes'>
- <model fallback='forbid'>EPYC-Rome</model>
+ <model fallback='forbid'>EPYC-Rome-v4</model>
<vendor>AMD</vendor>
<maxphysaddr mode='passthrough' limit='64'/>
<feature policy='require' name='x2apic'/>
@@ -52,7 +52,6 @@
<feature policy='require' name='ssbd'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='invtsc'/>
- <feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='virt-ssbd'/>
<feature policy='require' name='lbrv'/>
<feature policy='require' name='tsc-scale'/>
@@ -68,7 +67,7 @@
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
- <feature policy='disable' name='xsaves'/>
+ <feature policy='disable' name='ibrs'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>
@@ -111,7 +110,13 @@
<model usable='no'
vendor='Intel'>Haswell-noTSX</model>
<model usable='no' vendor='Intel'>Haswell-IBRS</model>
<model usable='no' vendor='Intel'>Haswell</model>
+ <model usable='no' vendor='AMD'>EPYC-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v4</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v3</model>
+ <model usable='no' vendor='AMD'>EPYC-Rome-v2</model>
<model usable='no' vendor='AMD'>EPYC-Rome</model>
+ <model usable='no' vendor='AMD'>EPYC-Milan-v2</model>
<model usable='no' vendor='AMD'>EPYC-Milan</model>
<model usable='yes' vendor='AMD'>EPYC-IBPB</model>
<model usable='no' vendor='AMD'>EPYC-Genoa</model>
diff --git a/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
b/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
index dba1d9b65a..7b83380d33 100644
--- a/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
+++ b/tests/qemuxml2argvdata/cpu-host-model.x86_64-latest.args
@@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \
-object
'{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes"}'
\
-machine q35,usb=off,dump-guest-core=off,memory-backend=pc.ram,acpi=off \
-accel kvm \
--cpu
EPYC-Rome,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,amd-ssbd=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,xsaves=off
\
+-cpu
EPYC-Rome-v4,x2apic=on,tsc-deadline=on,hypervisor=on,tsc-adjust=on,stibp=on,arch-capabilities=on,ssbd=on,cmp-legacy=on,virt-ssbd=on,lbrv=on,tsc-scale=on,vmcb-clean=on,pause-filter=on,pfthreshold=on,v-vmsave-vmload=on,vgif=on,svme-addr-chk=on,lfence-always-serializing=on,null-sel-clr-base=on,rdctl-no=on,skip-l1dfl-vmentry=on,mds-no=on,pschange-mc-no=on,ibrs=off
\
-m size=219136k \
-object
'{"qom-type":"memory-backend-ram","id":"pc.ram","size":224395264}'
\
-overcommit mem-lock=off \
--
2.41.0