lkml.org 
[lkml]   [2010]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] kvm: reduce couple for ACC_EXEC_MASK

    The statement "access &= ~(gpte >> PT64_NX_SHIFT);" tries
    to clear bit ACC_EXEC_MASK actually. This statement
    relies PT64_NX_SHIFT==63&&ACC_EXEC_MASK=1

    This patch reduces this couple.


    Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
    ---
    diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
    index 81eab9a..34f4aa2 100644
    --- a/arch/x86/kvm/paging_tmpl.h
    +++ b/arch/x86/kvm/paging_tmpl.h
    @@ -101,11 +101,9 @@ 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 (is_nx(vcpu))
    - access &= ~(gpte >> PT64_NX_SHIFT);
    -#endif
    + access = (gpte & (PT_WRITABLE_MASK | PT_USER_MASK));
    + if (PTTYPE != 64 || !is_nx(vcpu) || (gpte & PT64_NX_MASK))
    + access |= ACC_EXEC_MASK;
    return access;
    }


    \
     
     \ /
      Last update: 2010-04-17 11:11    [W:0.024 / U:0.968 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site