KVM: MMU: Optimize gpte_access() slightly
authorAvi Kivity <avi@redhat.com>
Wed, 12 Sep 2012 10:53:08 +0000 (13:53 +0300)
committerAvi Kivity <avi@redhat.com>
Thu, 20 Sep 2012 10:00:07 +0000 (13:00 +0300)
If nx is disabled, then is gpte[63] is set we will hit a reserved
bit set fault before checking permissions; so we can ignore the
setting of efer.nxe.

Reviewed-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/kvm/paging_tmpl.h

index bf7b4ff..064bcb3 100644 (file)
@@ -106,10 +106,8 @@ static unsigned FNAME(gpte_access)(struct kvm_vcpu *vcpu, pt_element_t gpte)
        unsigned access;
 
        access = (gpte & (PT_WRITABLE_MASK | PT_USER_MASK)) | ACC_EXEC_MASK;
-
 #if PTTYPE == 64
-       if (vcpu->arch.mmu.nx)
-               access &= ~(gpte >> PT64_NX_SHIFT);
+       access &= ~(gpte >> PT64_NX_SHIFT);
 #endif
        return access;
 }