]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
cpu_map: Add EPYC-Milan-v3 CPU model
authorJiri Denemark <jdenemar@redhat.com>
Thu, 6 Nov 2025 08:32:40 +0000 (09:32 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Fri, 7 Nov 2025 14:54:56 +0000 (15:54 +0100)
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
13 files changed:
src/cpu_map/index.xml
src/cpu_map/meson.build
src/cpu_map/x86_EPYC-Milan-v3.xml [new file with mode: 0644]
tests/cputestdata/x86_64-cpuid-EPYC-7713-64-Core-host.xml
tests/domaincapsdata/qemu_10.1.0-q35.x86_64+inteltdx.xml
tests/domaincapsdata/qemu_10.1.0-q35.x86_64.xml
tests/domaincapsdata/qemu_10.1.0-tcg.x86_64+inteltdx.xml
tests/domaincapsdata/qemu_10.1.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_10.1.0.x86_64+inteltdx.xml
tests/domaincapsdata/qemu_10.1.0.x86_64.xml
tests/domaincapsdata/qemu_10.2.0-q35.x86_64.xml
tests/domaincapsdata/qemu_10.2.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_10.2.0.x86_64.xml

index 00275d01967a58b9004762d813ee506d96afbb92..e73e5d5ae81c4864a301e2f58d164d370efb59e0 100644 (file)
       <include filename='x86_EPYC-Milan.xml'/>
       <include filename='x86_EPYC-Milan-v1.xml'/>
       <include filename='x86_EPYC-Milan-v2.xml'/>
+      <include filename='x86_EPYC-Milan-v3.xml'/>
       <include filename='x86_EPYC-Genoa.xml'/>
       <include filename='x86_EPYC-Genoa-v1.xml'/>
       <include filename='x86_EPYC-Genoa-v2.xml'/>
index 12b50aa7f2c278a4863ef8c640fbe752aac4f4c5..34b7bfac36834378a3914283e32e368eff2cc5e0 100644 (file)
@@ -70,6 +70,7 @@ cpumap_data = [
   'x86_EPYC-IBPB.xml',
   'x86_EPYC-Milan-v1.xml',
   'x86_EPYC-Milan-v2.xml',
+  'x86_EPYC-Milan-v3.xml',
   'x86_EPYC-Milan.xml',
   'x86_EPYC-Rome-v1.xml',
   'x86_EPYC-Rome-v2.xml',
diff --git a/src/cpu_map/x86_EPYC-Milan-v3.xml b/src/cpu_map/x86_EPYC-Milan-v3.xml
new file mode 100644 (file)
index 0000000..53ae589
--- /dev/null
@@ -0,0 +1,109 @@
+<cpus>
+  <model name='EPYC-Milan-v3'>
+    <decode host='on' guest='off'/>
+    <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='flushbyasid'/>
+    <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='lbrv'/>
+    <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='overflow-recov'/>
+    <feature name='pae'/>
+    <feature name='pat'/>
+    <feature name='pause-filter'/>
+    <feature name='pcid'/>
+    <feature name='pclmuldq'/>
+    <feature name='pdpe1gb'/>
+    <feature name='perfctr_core'/>
+    <feature name='pfthreshold'/>
+    <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='succor'/>
+    <feature name='svm'/>
+    <feature name='svme-addr-chk'/>
+    <feature name='syscall'/>
+    <feature name='tsc'/>
+    <feature name='tsc-scale'/>
+    <feature name='umip'/>
+    <feature name='v-vmsave-vmload'/>
+    <feature name='vaes'/>
+    <feature name='vgif'/>
+    <feature name='vmcb-clean'/>
+    <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>
index 5a8e9aaf07dca2485233b7db085b1f604b352f00..8701cd41ba8c42090645cab50897d0ffc7e934ce 100644 (file)
@@ -1,6 +1,6 @@
 <cpu>
   <arch>x86_64</arch>
-  <model>EPYC-Milan-v2</model>
+  <model>EPYC-Milan-v3</model>
   <vendor>AMD</vendor>
   <signature family='25' model='1' stepping='1'/>
   <feature name='monitor'/>
   <feature name='tce'/>
   <feature name='topoext'/>
   <feature name='perfctr_nb'/>
-  <feature name='overflow-recov'/>
-  <feature name='succor'/>
   <feature name='invtsc'/>
-  <feature name='lbrv'/>
   <feature name='svm-lock'/>
-  <feature name='tsc-scale'/>
-  <feature name='vmcb-clean'/>
-  <feature name='flushbyasid'/>
   <feature name='decodeassists'/>
-  <feature name='pause-filter'/>
-  <feature name='pfthreshold'/>
-  <feature name='v-vmsave-vmload'/>
-  <feature name='vgif'/>
   <feature name='rdctl-no'/>
   <feature name='skip-l1dfl-vmentry'/>
   <feature name='mds-no'/>
index 578d2fe90a360bd6acfaa70979e48f705fc7fa3d..ffee527ff4b2db4744575ac4eef90e00edfb8a08 100644 (file)
         <feature name='stibp-always-on'/>
         <feature name='xsaveerptr'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='clzero'/>
+        <feature name='cr8legacy'/>
+        <feature name='fxsr_opt'/>
+        <feature name='lfence-always-serializing'/>
+        <feature name='misalignsse'/>
+        <feature name='mmxext'/>
+        <feature name='no-nested-data-bp'/>
+        <feature name='null-sel-clr-base'/>
+        <feature name='osvw'/>
+        <feature name='perfctr_core'/>
+        <feature name='sse4a'/>
+        <feature name='stibp-always-on'/>
+        <feature name='xsaveerptr'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='clzero'/>
index b71ea9ba49d7c7dd97323d8c44c73925274b1830..b5d745c4eceee995c8ff8e6d71e7d2301d77ddd2 100644 (file)
         <feature name='vpclmulqdq'/>
         <feature name='xsaves'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='erms'/>
+        <feature name='fsrm'/>
+        <feature name='ibrs'/>
+        <feature name='invpcid'/>
+        <feature name='no-nested-data-bp'/>
+        <feature name='pcid'/>
+        <feature name='pku'/>
+        <feature name='stibp-always-on'/>
+        <feature name='vaes'/>
+        <feature name='vpclmulqdq'/>
+        <feature name='xsaves'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='xsaves'/>
index e5513ea0725b5cfe914de225d0a90e00b37018e1..2d40cf52286b2374ac927228ca3e3f12d6c6ae99 100644 (file)
         <feature name='xsavec'/>
         <feature name='xsaves'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='amd-ssbd'/>
+        <feature name='amd-stibp'/>
+        <feature name='clzero'/>
+        <feature name='flushbyasid'/>
+        <feature name='fxsr_opt'/>
+        <feature name='ibpb'/>
+        <feature name='ibrs'/>
+        <feature name='invpcid'/>
+        <feature name='lbrv'/>
+        <feature name='lfence-always-serializing'/>
+        <feature name='misalignsse'/>
+        <feature name='nrip-save'/>
+        <feature name='osvw'/>
+        <feature name='overflow-recov'/>
+        <feature name='pause-filter'/>
+        <feature name='pcid'/>
+        <feature name='perfctr_core'/>
+        <feature name='pfthreshold'/>
+        <feature name='stibp-always-on'/>
+        <feature name='succor'/>
+        <feature name='topoext'/>
+        <feature name='tsc-scale'/>
+        <feature name='v-vmsave-vmload'/>
+        <feature name='vmcb-clean'/>
+        <feature name='vpclmulqdq'/>
+        <feature name='xsavec'/>
+        <feature name='xsaves'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='amd-stibp'/>
index 5ea8c50ccd22a2e877844ea0e9c11a86c759329d..6bb394c533fc1d8f68315e1f22e911762ef04cf2 100644 (file)
         <feature name='xsavec'/>
         <feature name='xsaves'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='amd-ssbd'/>
+        <feature name='amd-stibp'/>
+        <feature name='clzero'/>
+        <feature name='flushbyasid'/>
+        <feature name='fxsr_opt'/>
+        <feature name='ibpb'/>
+        <feature name='ibrs'/>
+        <feature name='invpcid'/>
+        <feature name='lbrv'/>
+        <feature name='lfence-always-serializing'/>
+        <feature name='misalignsse'/>
+        <feature name='nrip-save'/>
+        <feature name='osvw'/>
+        <feature name='overflow-recov'/>
+        <feature name='pause-filter'/>
+        <feature name='pcid'/>
+        <feature name='perfctr_core'/>
+        <feature name='pfthreshold'/>
+        <feature name='stibp-always-on'/>
+        <feature name='succor'/>
+        <feature name='topoext'/>
+        <feature name='tsc-scale'/>
+        <feature name='v-vmsave-vmload'/>
+        <feature name='vmcb-clean'/>
+        <feature name='vpclmulqdq'/>
+        <feature name='xsavec'/>
+        <feature name='xsaves'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='amd-stibp'/>
index 7efd7b9338c0dc37e3eef8b94a0eca6031aca3c0..7e1ec7e5908dbb6efa33ab1dbb1fdd3a3ba8cb5a 100644 (file)
         <feature name='stibp-always-on'/>
         <feature name='xsaveerptr'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='clzero'/>
+        <feature name='cr8legacy'/>
+        <feature name='fxsr_opt'/>
+        <feature name='lfence-always-serializing'/>
+        <feature name='misalignsse'/>
+        <feature name='mmxext'/>
+        <feature name='no-nested-data-bp'/>
+        <feature name='null-sel-clr-base'/>
+        <feature name='osvw'/>
+        <feature name='perfctr_core'/>
+        <feature name='sse4a'/>
+        <feature name='stibp-always-on'/>
+        <feature name='xsaveerptr'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='clzero'/>
index 01aeb7318b89decc95cac8c33b19255894093682..af75d3fd36aa2742199550dea499afc66186798f 100644 (file)
         <feature name='vpclmulqdq'/>
         <feature name='xsaves'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='erms'/>
+        <feature name='fsrm'/>
+        <feature name='ibrs'/>
+        <feature name='invpcid'/>
+        <feature name='no-nested-data-bp'/>
+        <feature name='pcid'/>
+        <feature name='pku'/>
+        <feature name='stibp-always-on'/>
+        <feature name='vaes'/>
+        <feature name='vpclmulqdq'/>
+        <feature name='xsaves'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='xsaves'/>
index 7c1fd24169df8959f4a37e8374238ab2ea485819..39c65c061bb449c1131fd809b7d3bf3d273def79 100644 (file)
       <blockers model='EPYC-Milan-v2'>
         <feature name='pcid'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='pcid'/>
+      </blockers>
       <model usable='yes' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <model usable='yes' vendor='AMD'>EPYC-Rome-v1</model>
       <model usable='yes' vendor='AMD'>EPYC-Rome-v2</model>
index 4f860aab23553e9e3dc53f8bd82003b2fd793021..4cb64e95df9db9b053dc22039313a6bfe351a4a5 100644 (file)
         <feature name='xsavec'/>
         <feature name='xsaves'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='amd-psfd'/>
+        <feature name='amd-ssbd'/>
+        <feature name='amd-stibp'/>
+        <feature name='clzero'/>
+        <feature name='flushbyasid'/>
+        <feature name='fxsr_opt'/>
+        <feature name='ibpb'/>
+        <feature name='ibrs'/>
+        <feature name='invpcid'/>
+        <feature name='lbrv'/>
+        <feature name='lfence-always-serializing'/>
+        <feature name='misalignsse'/>
+        <feature name='nrip-save'/>
+        <feature name='osvw'/>
+        <feature name='overflow-recov'/>
+        <feature name='pause-filter'/>
+        <feature name='pcid'/>
+        <feature name='perfctr_core'/>
+        <feature name='pfthreshold'/>
+        <feature name='stibp-always-on'/>
+        <feature name='succor'/>
+        <feature name='topoext'/>
+        <feature name='tsc-scale'/>
+        <feature name='v-vmsave-vmload'/>
+        <feature name='vmcb-clean'/>
+        <feature name='vpclmulqdq'/>
+        <feature name='xsavec'/>
+        <feature name='xsaves'/>
+      </blockers>
       <model usable='no' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <blockers model='EPYC-Rome'>
         <feature name='amd-stibp'/>
index 0b3d87039d18a12c40c6d75497e8c886a823fe4b..71c1767f1bca31bd1d39feed8f1e7ebc10b0fd5a 100644 (file)
       <blockers model='EPYC-Milan-v2'>
         <feature name='pcid'/>
       </blockers>
+      <model usable='no' vendor='AMD'>EPYC-Milan-v3</model>
+      <blockers model='EPYC-Milan-v3'>
+        <feature name='pcid'/>
+      </blockers>
       <model usable='yes' vendor='AMD' canonical='EPYC-Rome-v1'>EPYC-Rome</model>
       <model usable='yes' vendor='AMD'>EPYC-Rome-v1</model>
       <model usable='yes' vendor='AMD'>EPYC-Rome-v2</model>