lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141126084757.GA1042@kernel>
Date:	Wed, 26 Nov 2014 16:47:57 +0800
From:	Wanpeng Li <wanpeng.li@...ux.intel.com>
To:	Nadav Amit <nadav.amit@...il.com>
Cc:	Paolo Bonzini <pbonzini@...hat.com>, linux-kernel@...r.kernel.org,
	kvm list <kvm@...r.kernel.org>,
	Nadav Amit <namit@...technion.ac.il>, hpa@...ux.intel.com
Subject: Re: [CFT PATCH v2 0/2] KVM: support XSAVES usage in the host

Hi Nadav,
On Wed, Nov 26, 2014 at 11:00:34AM +0200, Nadav Amit wrote:
>Wanpeng Li <wanpeng.li@...ux.intel.com> 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@...hat.com> 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)?
>I guess this paragraph is intended for me. As I said before, I got limited
>access to the machine - I will not be able to run these experiments before
>Sunday, and I am not sure that I will have time to fully debug it. If you
>insist, the very least please run some experiments running a 3.16 (or older)
>guest kernel and running 3.17 with ‘noxsaves’ kernel parameter.
>
>> +       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.
>> 
>>>>> did not need to apply this patch on top. [although I am not sure whether
>>>>> relying on userspace to call KVM_SET_XSAVE early enough is a good practice].
>>>> 
>>>> Did you actually try the patch? :)  If it works, I'm tempted to apply it
>>>> anyway.
>>> Yes, I tried it both with and without this patch.
>>> Due to time constraints I only tested minimal functionality (Linux boot).
>>> I will run more tests in the near future. Anyhow, you can put the:
>>> 
>>> Tested-by: Nadav Amit <namit@...technion.ac.il>
>>> 
>>>>> One disclaimer: Since I got limited time with the machine, I executed
>>>>> a slightly modified kernel/qemu, and not the latest version.
>>>>> Anyhow, I don’t think these differences can have any impact.
>>>> 
>>>> Yes, that is no problem.
>>> 
>>> I am just worried that Wanpeng reported it fails, while I report it works...
>> 
>> 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. 
>xsaves is already enabled in KVM (the host) since 3.17. It just didn’t work…
>

Not yet, it is enabled in native currrently instead of vmx and my patch
is still under debug.

Regards,
Wanpeng Li 

>Nadav
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ