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    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site