[libvirt 1/2] cpu_map: Add SapphireRapids CPU model

Tim Wiederhake twiederh at redhat.com
Wed May 24 10:51:24 UTC 2023


On Wed, 2023-05-17 at 17:30 -0700, Lin Yang wrote:
> Introduced in QEMU by commit v8.0.0-7eb061b06e.
> 
> Signed-off-by: Lin Yang <lin.a.yang at intel.com>
> ---
>  src/cpu_map/index.xml              |   1 +
>  src/cpu_map/meson.build            |   1 +
>  src/cpu_map/x86_SapphireRapids.xml | 116
> +++++++++++++++++++++++++++++
>  3 files changed, 118 insertions(+)
>  create mode 100644 src/cpu_map/x86_SapphireRapids.xml
> 
> diff --git a/src/cpu_map/index.xml b/src/cpu_map/index.xml
> index deae92552f..0187016c1c 100644
> --- a/src/cpu_map/index.xml
> +++ b/src/cpu_map/index.xml
> @@ -56,6 +56,7 @@
>      <include filename='x86_Icelake-Server-noTSX.xml'/>
>      <include filename='x86_Cooperlake.xml'/>
>      <include filename='x86_Snowridge.xml'/>
> +    <include filename='x86_SapphireRapids.xml'/>
>  
>      <!-- AMD CPUs -->
>      <include filename='x86_athlon.xml'/>
> diff --git a/src/cpu_map/meson.build b/src/cpu_map/meson.build
> index 55c3703006..fa83b23474 100644
> --- a/src/cpu_map/meson.build
> +++ b/src/cpu_map/meson.build
> @@ -72,6 +72,7 @@ cpumap_data = [
>    'x86_qemu64.xml',
>    'x86_SandyBridge-IBRS.xml',
>    'x86_SandyBridge.xml',
> +  'x86_SapphireRapids.xml',
>    'x86_Skylake-Client-IBRS.xml',
>    'x86_Skylake-Client-noTSX-IBRS.xml',
>    'x86_Skylake-Client.xml',
> diff --git a/src/cpu_map/x86_SapphireRapids.xml
> b/src/cpu_map/x86_SapphireRapids.xml
> new file mode 100644
> index 0000000000..2297feeeca
> --- /dev/null
> +++ b/src/cpu_map/x86_SapphireRapids.xml
> @@ -0,0 +1,116 @@
> +<cpus>
> +  <model name='SapphireRapids'>
> +    <decode host='on' guest='on'/>
> +    <signature family='6' model='143'/>
> +    <vendor name='Intel'/>
> +    <feature name='3dnowprefetch'/>
> +    <feature name='abm'/>
> +    <feature name='adx'/>
> +    <feature name='aes'/>
> +    <feature name='amx-bf16'/>
> +    <feature name='amx-int8'/>
> +    <feature name='amx-tile'/>
> +    <feature name='apic'/>
> +    <feature name='arat'/>
> +    <feature name='arch-capabilities'/>
> +    <feature name='avx'/>
> +    <feature name='avx-vnni'/>
> +    <feature name='avx2'/>
> +    <feature name='avx512-bf16'/>
> +    <feature name='avx512-fp16'/>
> +    <feature name='avx512-vpopcntdq'/>
> +    <feature name='avx512bitalg'/>
> +    <feature name='avx512bw'/>
> +    <feature name='avx512cd'/>
> +    <feature name='avx512dq'/>
> +    <feature name='avx512f'/>
> +    <feature name='avx512ifma'/>
> +    <feature name='avx512vbmi'/>
> +    <feature name='avx512vbmi2'/>
> +    <feature name='avx512vl'/>
> +    <feature name='avx512vnni'/>
> +    <feature name='bmi1'/>
> +    <feature name='bmi2'/>
> +    <feature name='bus-lock-detect'/>
> +    <feature name='clflush'/>
> +    <feature name='clflushopt'/>
> +    <feature name='clwb'/>
> +    <feature name='cmov'/>
> +    <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='fsrc'/>
> +    <feature name='fsrm'/>
> +    <feature name='fsrs'/>
> +    <feature name='fxsr'/>
> +    <feature name='fzrm'/>
> +    <feature name='gfni'/>
> +    <feature name='hle'/>
> +    <feature name='ibrs-all'/>
> +    <feature name='invpcid'/>
> +    <feature name='la57'/>
> +    <feature name='lahf_lm'/>
> +    <feature name='lm'/>
> +    <feature name='mca'/>
> +    <feature name='mce'/>
> +    <feature name='mds-no'/>
> +    <feature name='mmx'/>
> +    <feature name='movbe'/>
> +    <feature name='msr'/>
> +    <feature name='mtrr'/>
> +    <feature name='nx'/>
> +    <feature name='pae'/>
> +    <feature name='pat'/>
> +    <feature name='pcid'/>
> +    <feature name='pclmuldq'/>
> +    <feature name='pdpe1gb'/>
> +    <feature name='pge'/>
> +    <feature name='pku'/>
> +    <feature name='pni'/>
> +    <feature name='popcnt'/>
> +    <feature name='pschange-mc-no'/>
> +    <feature name='pse'/>
> +    <feature name='pse36'/>
> +    <feature name='rdctl-no'/>
> +    <feature name='rdpid'/>
> +    <feature name='rdrand'/>
> +    <feature name='rdseed'/>
> +    <feature name='rdtscp'/>
> +    <feature name='rtm'/>
> +    <feature name='sep'/>
> +    <feature name='serialize'/>
> +    <feature name='sha-ni'/>
> +    <feature name='skip-l1dfl-vmentry'/>
> +    <feature name='smap'/>
> +    <feature name='smep'/>
> +    <feature name='spec-ctrl'/>
> +    <feature name='ssbd'/>
> +    <feature name='sse'/>
> +    <feature name='sse2'/>
> +    <feature name='sse4.1'/>
> +    <feature name='sse4.2'/>
> +    <feature name='ssse3'/>
> +    <feature name='syscall'/>
> +    <feature name='taa-no'/>
> +    <feature name='tsc'/>
> +    <feature name='tsc-deadline'/>
> +    <feature name='tsx-ldtrk'/>
> +    <feature name='umip'/>
> +    <feature name='vaes'/>
> +    <feature name='vme'/>
> +    <feature name='vpclmulqdq'/>
> +    <feature name='wbnoinvd'/>
> +    <feature name='x2apic'/>
> +    <feature name='xfd'/>
> +    <feature name='xgetbv1'/>
> +    <feature name='xsave'/>
> +    <feature name='xsavec'/>
> +    <feature name='xsaveopt'/>
> +    <feature name='xsaves'/>
> +  </model>
> +</cpus>

Hi,

This patch makes the tests fail. The changes to
tests/domaincapsdata/*.xml from patch 2 should be merged into this
commit.

I went ahead and made that change so I could merge it directly.

For patch 2 I am unclear on the necessity of the tests, so I would like
to hear what others think first.

Cheers,
Tim



More information about the libvir-list mailing list