diff options
author | 2022-03-04 18:39:29 -0500 | |
---|---|---|
committer | 2022-03-04 18:39:29 -0500 | |
commit | 0564eeb71bbb0e1a566fb701f90155bef9e7a224 (patch) | |
tree | 2935323651d0f8ab2acb5f96f6ee6c722a9cad5a /arch/x86/kvm/cpuid.c | |
parent | KVM: SVM: Disable preemption across AVIC load/put during APICv refresh (diff) | |
parent | KVM: x86: pull kvm->srcu read-side to kvm_arch_vcpu_ioctl_run (diff) | |
download | wireguard-linux-0564eeb71bbb0e1a566fb701f90155bef9e7a224.tar.xz wireguard-linux-0564eeb71bbb0e1a566fb701f90155bef9e7a224.zip |
Merge branch 'kvm-bugfixes' into HEAD
Merge bugfixes from 5.17 before merging more tricky work.
Diffstat (limited to 'arch/x86/kvm/cpuid.c')
-rw-r--r-- | arch/x86/kvm/cpuid.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/x86/kvm/cpuid.c b/arch/x86/kvm/cpuid.c index ff756cdc31ce..afcdd4e693e5 100644 --- a/arch/x86/kvm/cpuid.c +++ b/arch/x86/kvm/cpuid.c @@ -282,6 +282,7 @@ static void kvm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) { struct kvm_lapic *apic = vcpu->arch.apic; struct kvm_cpuid_entry2 *best; + u64 guest_supported_xcr0; best = kvm_find_cpuid_entry(vcpu, 1, 0); if (best && apic) { @@ -293,9 +294,11 @@ static void kvm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) kvm_apic_set_version(vcpu); } - vcpu->arch.guest_supported_xcr0 = + guest_supported_xcr0 = cpuid_get_supported_xcr0(vcpu->arch.cpuid_entries, vcpu->arch.cpuid_nent); + vcpu->arch.guest_fpu.fpstate->user_xfeatures = guest_supported_xcr0; + kvm_update_pv_runtime(vcpu); vcpu->arch.maxphyaddr = cpuid_query_maxphyaddr(vcpu); |