aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2012-09-16 07:49:15 -0400
committerAvi Kivity <avi@redhat.com>2012-09-20 06:00:09 -0400
commit71331a1da1e3a66d14bb3864f99e32d84ab5a76f (patch)
treeb4a8b0f626305d060f9bab68acdc4a9b5d4298aa /arch/x86
parent6fd01b711bee96ce3356f7b6f370ab708e37504b (diff)
KVM: MMU: Eliminate eperm temporary
'eperm' is no longer used in the walker loop, so we can eliminate it. Reviewed-by: Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kvm/paging_tmpl.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/x86/kvm/paging_tmpl.h b/arch/x86/kvm/paging_tmpl.h
index 134ea7b1c585..95a64d1dccc7 100644
--- a/arch/x86/kvm/paging_tmpl.h
+++ b/arch/x86/kvm/paging_tmpl.h
@@ -153,7 +153,6 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker,
153 gfn_t table_gfn; 153 gfn_t table_gfn;
154 unsigned index, pt_access, pte_access; 154 unsigned index, pt_access, pte_access;
155 gpa_t pte_gpa; 155 gpa_t pte_gpa;
156 bool eperm;
157 int offset; 156 int offset;
158 const int write_fault = access & PFERR_WRITE_MASK; 157 const int write_fault = access & PFERR_WRITE_MASK;
159 const int user_fault = access & PFERR_USER_MASK; 158 const int user_fault = access & PFERR_USER_MASK;
@@ -165,7 +164,6 @@ static int FNAME(walk_addr_generic)(struct guest_walker *walker,
165 164
166 trace_kvm_mmu_pagetable_walk(addr, access); 165 trace_kvm_mmu_pagetable_walk(addr, access);
167retry_walk: 166retry_walk:
168 eperm = false;
169 walker->level = mmu->root_level; 167 walker->level = mmu->root_level;
170 pte = mmu->get_cr3(vcpu); 168 pte = mmu->get_cr3(vcpu);
171 169
@@ -231,8 +229,7 @@ retry_walk:
231 walker->ptes[walker->level - 1] = pte; 229 walker->ptes[walker->level - 1] = pte;
232 } while (!is_last_gpte(mmu, walker->level, pte)); 230 } while (!is_last_gpte(mmu, walker->level, pte));
233 231
234 eperm |= permission_fault(mmu, pte_access, access); 232 if (unlikely(permission_fault(mmu, pte_access, access))) {
235 if (unlikely(eperm)) {
236 errcode |= PFERR_PRESENT_MASK; 233 errcode |= PFERR_PRESENT_MASK;
237 goto error; 234 goto error;
238 } 235 }