From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752366AbcF1IpF (ORCPT ); Tue, 28 Jun 2016 04:45:05 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:35815 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751673AbcF1IpC (ORCPT ); Tue, 28 Jun 2016 04:45:02 -0400 Subject: Re: [PATCH 1/5] mmu: mark spte present if the x bit is set To: Bandan Das , kvm@vger.kernel.org References: <1467088360-10186-1-git-send-email-bsd@redhat.com> <1467088360-10186-2-git-send-email-bsd@redhat.com> Cc: guangrong.xiao@linux.intel.com, linux-kernel@vger.kernel.org From: Paolo Bonzini Message-ID: <55601232-c941-74e8-f740-fd09e9e8a6ae@redhat.com> Date: Tue, 28 Jun 2016 10:44:53 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 MIME-Version: 1.0 In-Reply-To: <1467088360-10186-2-git-send-email-bsd@redhat.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 28/06/2016 06:32, Bandan Das wrote: > This is safe because is_shadow_present_pte() is called > on host controlled page table and we know the spte is > valid > > Signed-off-by: Bandan Das > --- > arch/x86/kvm/mmu.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c > index def97b3..a50af79 100644 > --- a/arch/x86/kvm/mmu.c > +++ b/arch/x86/kvm/mmu.c > @@ -304,7 +304,8 @@ static int is_nx(struct kvm_vcpu *vcpu) > > static int is_shadow_present_pte(u64 pte) > { > - return pte & PT_PRESENT_MASK && !is_mmio_spte(pte); > + return pte & (PT_PRESENT_MASK | shadow_x_mask) && > + !is_mmio_spte(pte); This should really be pte & 7 when using EPT. But this is okay as an alternative to a new shadow_present_mask. Paolo > } > > static int is_large_pte(u64 pte) >