mirror of https://github.com/proxmox/mirror_qemu
mmu-hash32: Remove nx from context structure
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> Signed-off-by: Alexander Graf <agraf@suse.de>master
parent
87dc3fd13e
commit
e1a53ba2e0
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue