Re: [CFT PATCH v2 0/2] KVM: support XSAVES usage in the host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 26/11/2014 02:24, Wanpeng Li wrote:
> Hi all,
> On Tue, Nov 25, 2014 at 04:50:06PM +0200, Nadav Amit wrote:
>>
>>> On Nov 25, 2014, at 16:17, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
>>>
>>>
>>>
>>> On 25/11/2014 15:05, Nadav Amit wrote:
>>>>> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
>>>>> index 373b0ab9a32e..ca26681455c2 100644
>>>>> --- a/arch/x86/kvm/x86.c
>>>>> +++ b/arch/x86/kvm/x86.c
>>>>> @@ -6955,6 +6955,9 @@ int fx_init(struct kvm_vcpu *vcpu)
>>>>> 		return err;
>>>>>
>>>>> 	fpu_finit(&vcpu->arch.guest_fpu);
>>>>> +	if (cpu_has_xsaves)
>>>>> +		vcpu->arch.guest_fpu.state->xsave.xsave_hdr.xcomp_bv =
>>>>> +			host_xcr0 | XSTATE_COMPACTION_ENABLED;
>>>>>
>>>>> 	/*
>>>>> 	 * Ensure guest xcr0 is valid for loading
>>>>
>>>> The second version works for me (w/qemu v2.1.0; Linux 3.13 guest). I
> 
> Could you try 3.17 guest which has xsaves enabled? Because I'm not sure if 
> the below codes from Paolo is enough to mask XSAVES, should we also add 
> F(XSAVES)?
> 
> +       const u32 kvm_supported_word10_x86_features =
> +               F(XSAVEOPT) | F(XSAVEC) | F(XGETBV1);
> +
> 
> In addition, the 3.17 guest is still hang as I mentioned even if I add the 
> F(XSAVES) to the kvm_supported_word10_x86_features.

Note that the point is _hiding_ XSAVES while leaving
XSAVEOPT/XSAVEC/XGETBV1 enabled.  This series only fixes the problems
with xsaves in the host, it doesn't try making XSAVES work in the guest.

> I have another patch which enable xsaves in KVM and the patch is still
> under debug with Paolo's patch "KVM: x86: support XSAVES usage in the host",
> so the 1/2 patch from Paolo can be dropped if my patch is ready. Anyway,
> a quick fix is needed before enable xsaves in kvm. 

Please add XSAVES to kvm_supported_word10_x86_features in your patches
instead.  We still need to mask any (not yet defined) feature in bit 4
and above of CPUID[EAX=0xd,ECX].EAX.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux