Patchwork [37/45] mmu-hash32: Remove nx from context structure

login
register
mail settings
Submitter David Gibson
Date March 6, 2013, 3:44 a.m.
Message ID <1362541473-4365-38-git-send-email-david@gibson.dropbear.id.au>
Download mbox | patch
Permalink /patch/225280/
State New
Headers show

Comments

David Gibson - March 6, 2013, 3:44 a.m.
Previous cleanups have meant the nx field of the mmu_ctx_hash32 structure
is now only used within ppc_hash32_translate(), and so it can be replaced
by a local variable.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
 target-ppc/mmu-hash32.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Patch

diff --git a/target-ppc/mmu-hash32.c b/target-ppc/mmu-hash32.c
index ae606fd..2b88b9f 100644
--- a/target-ppc/mmu-hash32.c
+++ b/target-ppc/mmu-hash32.c
@@ -45,7 +45,6 @@  struct mmu_ctx_hash32 {
     hwaddr raddr;      /* Real address              */
     int prot;                      /* Protection bits           */
     int key;                       /* Access key                */
-    int nx;                        /* Non-execute area          */
 };
 
 static int ppc_hash32_pp_check(int key, int pp, int nx)
@@ -383,6 +382,7 @@  static int ppc_hash32_translate(CPUPPCState *env, struct mmu_ctx_hash32 *ctx,
 {
     int ret;
     target_ulong sr;
+    bool nx;
     hwaddr pte_offset;
     ppc_hash_pte32_t pte;
 
@@ -414,8 +414,8 @@  static int ppc_hash32_translate(CPUPPCState *env, struct mmu_ctx_hash32 *ctx,
     }
 
     /* 5. Check for segment level no-execute violation */
-    ctx->nx = !!(sr & SR32_NX);
-    if ((rwx == 2) && ctx->nx) {
+    nx = !!(sr & SR32_NX);
+    if ((rwx == 2) && nx) {
         return -3;
     }
 
@@ -434,7 +434,7 @@  static int ppc_hash32_translate(CPUPPCState *env, struct mmu_ctx_hash32 *ctx,
 
     pp = pte.pte1 & HPTE32_R_PP;
     /* Compute access rights */
-    access = ppc_hash32_pp_check(ctx->key, pp, ctx->nx);
+    access = ppc_hash32_pp_check(ctx->key, pp, nx);
     /* Keep the matching PTE informations */
     ctx->raddr = pte.pte1;
     ctx->prot = access;