From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [Resend PATCH] KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() Date: Thu, 2 Aug 2018 14:58:30 +0200 Message-ID: <2812c987-4e2b-e92a-8195-bef7ebd29318@redhat.com> References: <20180723123108.15685-1-Tianyu.Lan@microsoft.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: "rkrcmar@redhat.com" , "tglx@linutronix.de" , "mingo@redhat.com" , "hpa@zytor.com" , "x86@kernel.org" , "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" To: Tianyu Lan Return-path: In-Reply-To: <20180723123108.15685-1-Tianyu.Lan@microsoft.com> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 23/07/2018 14:31, Tianyu Lan wrote: > X86_CR4_OSXSAVE check belongs to sregs check and so move into > kvm_valid_sregs(). > > Signed-off-by: Lan Tianyu > --- > arch/x86/kvm/x86.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index 153564db7980..5c9acdbb2020 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -8045,6 +8045,10 @@ EXPORT_SYMBOL_GPL(kvm_task_switch); > > static int kvm_valid_sregs(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs) > { > + if (!guest_cpuid_has(vcpu, X86_FEATURE_XSAVE) && > + (sregs->cr4 & X86_CR4_OSXSAVE)) > + return -EINVAL; > + > if ((sregs->efer & EFER_LME) && (sregs->cr0 & X86_CR0_PG)) { > /* > * When EFER.LME and CR0.PG are set, the processor is in > @@ -8075,10 +8079,6 @@ static int __set_sregs(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs) > struct desc_ptr dt; > int ret = -EINVAL; > > - if (!guest_cpuid_has(vcpu, X86_FEATURE_XSAVE) && > - (sregs->cr4 & X86_CR4_OSXSAVE)) > - goto out; > - > if (kvm_valid_sregs(vcpu, sregs)) > goto out; > > Queued, thanks. Paolo