Messages in this thread | | | Date | Tue, 4 Jan 2022 21:45:41 +0100 | Subject | Re: [PATCH v4 18/21] kvm: x86: Add support for getting/setting expanded xstate buffer | From | Paolo Bonzini <> |
| |
On 1/4/22 20:46, Sean Christopherson wrote: > On Wed, Dec 29, 2021, Yang Zhong wrote: >> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c >> index bdf89c28d2ce..76e1941db223 100644 >> --- a/arch/x86/kvm/x86.c >> +++ b/arch/x86/kvm/x86.c >> @@ -4296,6 +4296,11 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext) >> else >> r = 0; >> break; >> + case KVM_CAP_XSAVE2: >> + r = kvm->vcpus[0]->arch.guest_fpu.uabi_size; > > a) This does not compile against kvm/queue. > > arch/x86/kvm/x86.c: In function ‘kvm_vm_ioctl_check_extension’: > arch/x86/kvm/x86.c:4317:24: error: ‘struct kvm’ has no member named ‘vcpus’ > 4317 | r = kvm->vcpus[0]->arch.guest_fpu.uabi_size; > > b) vcpu0 is not guaranteed to be non-NULL at this point.
Yang, you can post an incremental patch for this. You can use the highest bit of the guest-permitted xcr0 (i.e. the OR of KVM's supported XCR0 an the guest-permitted dynamic features) and pass it to cpuid(0xD).
Paolo
| |