cpu_map: Add missing vmx features from MSR 0x480

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
Tim Wiederhake 2023-11-09 14:33:38 +01:00
parent e18075b27e
commit 3590bb344e
16 changed files with 34 additions and 2 deletions

View File

@ -786,4 +786,14 @@
<feature name='split-lock-detect'>
<msr index='0xcf' edx='0x00000000' eax='0x00000020'/>
</feature>
<feature name='vmx-ins-outs'>
<msr index='0x480' edx='0x00400000' eax='0x00000000'/>
</feature>
<feature name='vmx-true-ctls'>
<msr index='0x480' edx='0x00800000' eax='0x00000000'/>
</feature>
<feature name='vmx-any-errcode'>
<msr index='0x480' edx='0x01000000' eax='0x00000000'/>
</feature>
</cpus>

View File

@ -7,4 +7,5 @@
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000101' edx='0x28100800'/>
<cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x01009000' ecx='0x00000000' edx='0x00000000'/>
<msr index='0x10a' edx='0x00000000' eax='0x0000006b'/>
<msr index='0x480' edx='0x00c00000' eax='0x00000000'/>
</cpudata>

View File

@ -18,6 +18,8 @@
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
<feature policy='disable' name='mpx'/>
<feature policy='disable' name='core-capability'/>
<feature policy='disable' name='pdpe1gb'/>

View File

@ -8,4 +8,5 @@
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
<cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x01009000' ecx='0x00000000' edx='0x00000000'/>
<msr index='0x10a' edx='0x00000000' eax='0x000001eb'/>
<msr index='0x480' edx='0x00c00000' eax='0x00000000'/>
</cpudata>

View File

@ -13,4 +13,6 @@
<feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</cpu>

View File

@ -6,4 +6,5 @@
<cpuid eax_in='0x0000000d' ecx_in='0x01' eax='0x0000000f' ebx='0x00000000' ecx='0x00000000' edx='0x00000000'/>
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
<msr index='0x10a' edx='0x00000000' eax='0x00000048'/>
<msr index='0x480' edx='0x00c00000' eax='0x00000000'/>
</cpudata>

View File

@ -15,6 +15,8 @@
<feature policy='require' name='pdpe1gb'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
<feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
</cpu>

View File

@ -7,4 +7,5 @@
<cpuid eax_in='0x80000001' ecx_in='0x00' eax='0x00000000' ebx='0x00000000' ecx='0x00000121' edx='0x2c100800'/>
<cpuid eax_in='0x80000008' ecx_in='0x00' eax='0x00000000' ebx='0x01001000' ecx='0x00000000' edx='0x00000000'/>
<msr index='0x10a' edx='0x00000000' eax='0x000000eb'/>
<msr index='0x480' edx='0x00c00000' eax='0x00000000'/>
</cpudata>

View File

@ -19,4 +19,6 @@
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</cpu>

View File

@ -19,4 +19,6 @@
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</cpu>

View File

@ -59,6 +59,8 @@
<feature policy='require' name='invtsc'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>

View File

@ -58,6 +58,8 @@
<feature policy='require' name='invtsc'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>

View File

@ -59,6 +59,8 @@
<feature policy='require' name='invtsc'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>

View File

@ -58,6 +58,8 @@
<feature policy='require' name='invtsc'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='vmx-ins-outs'/>
<feature policy='require' name='vmx-true-ctls'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes' vendor='unknown'>qemu64</model>

View File

@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \
-object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes \
-machine pc-q35-4.2,usb=off,dump-guest-core=off \
-accel kvm \
-cpu Skylake-Client-IBRS,ss=on,vmx=on,hypervisor=on,tsc-adjust=on,clflushopt=on,umip=on,md-clear=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,pdpe1gb=on,skip-l1dfl-vmentry=on,pschange-mc-no=on \
-cpu Skylake-Client-IBRS,ss=on,vmx=on,hypervisor=on,tsc-adjust=on,clflushopt=on,umip=on,md-clear=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,pdpe1gb=on,skip-l1dfl-vmentry=on,pschange-mc-no=on,vmx-ins-outs=on,vmx-true-ctls=on \
-m size=219136k \
-overcommit mem-lock=off \
-smp 1,sockets=1,cores=1,threads=1 \

View File

@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \
-object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/master-key.aes \
-machine pc-q35-5.0,usb=off,dump-guest-core=off \
-accel kvm \
-cpu Skylake-Client-IBRS,ss=on,vmx=on,hypervisor=on,tsc-adjust=on,clflushopt=on,umip=on,md-clear=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,pdpe1gb=on,skip-l1dfl-vmentry=on,pschange-mc-no=on \
-cpu Skylake-Client-IBRS,ss=on,vmx=on,hypervisor=on,tsc-adjust=on,clflushopt=on,umip=on,md-clear=on,stibp=on,arch-capabilities=on,ssbd=on,xsaves=on,pdpe1gb=on,skip-l1dfl-vmentry=on,pschange-mc-no=on,vmx-ins-outs=on,vmx-true-ctls=on \
-m size=219136k \
-overcommit mem-lock=off \
-smp 1,sockets=1,cores=1,threads=1 \