cpu: Add EPYC-IBPB CPU model

This is a variant of EPYC with indirect branch prediction protection.
The only difference between EPYC and EPYC-IBPB is the added "ibpb"
feature.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Jiri Denemark 2018-01-08 20:53:25 +01:00
parent 33dd664c50
commit 6d4a3cd427
4 changed files with 75 additions and 6 deletions

View File

@ -2250,6 +2250,78 @@
<feature name='xsavec'/>
<feature name='xsaveopt'/>
</model>
<model name='EPYC-IBPB'>
<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='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='monitor'/>
<feature name='movbe'/>
<feature name='msr'/>
<feature name='mtrr'/>
<feature name='nx'/>
<feature name='osvw'/>
<feature name='pae'/>
<feature name='pat'/>
<feature name='pclmuldq'/>
<feature name='pdpe1gb'/>
<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='xsaveopt'/>
</model>
</arch>
<arch name='ppc64'>

View File

@ -1,5 +1,5 @@
<cpu mode='custom' match='exact'>
<model fallback='forbid'>EPYC</model>
<model fallback='forbid'>EPYC-IBPB</model>
<vendor>AMD</vendor>
<feature policy='require' name='ht'/>
<feature policy='require' name='osxsave'/>
@ -13,6 +13,5 @@
<feature policy='require' name='perfctr_core'/>
<feature policy='require' name='perfctr_nb'/>
<feature policy='require' name='invtsc'/>
<feature policy='require' name='ibpb'/>
<feature policy='disable' name='rdtscp'/>
</cpu>

View File

@ -1,6 +1,6 @@
<cpu>
<arch>x86_64</arch>
<model>EPYC</model>
<model>EPYC-IBPB</model>
<vendor>AMD</vendor>
<feature name='ht'/>
<feature name='osxsave'/>
@ -14,5 +14,4 @@
<feature name='perfctr_core'/>
<feature name='perfctr_nb'/>
<feature name='invtsc'/>
<feature name='ibpb'/>
</cpu>

View File

@ -1,12 +1,11 @@
<cpu mode='custom' match='exact'>
<model fallback='forbid'>EPYC</model>
<model fallback='forbid'>EPYC-IBPB</model>
<vendor>AMD</vendor>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='cmp_legacy'/>
<feature policy='require' name='ibpb'/>
<feature policy='disable' name='monitor'/>
<feature policy='disable' name='rdtscp'/>
<feature policy='disable' name='svm'/>