Commit 0a4c7740 authored by Alex Zuepke's avatar Alex Zuepke Committed by David Gibson
Browse files

target-ppc: fix Book-E TLB matching



The Book-E TLB matching process should bail out early when a TLB
entry matches, but the access permissions are wrong. The CPU
will then raise a DSI error instead of a Data TLB error, as
described for TLB matching in Freescale and IBM documents.

Signed-off-by: default avatarAlex Zuepke <azu@sysgo.de>
Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
parent 87684b4c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -825,7 +825,7 @@ static int mmubooke_get_physical_address(CPUPPCState *env, mmu_ctx_t *ctx,
        tlb = &env->tlb.tlbe[i];
        ret = mmubooke_check_tlb(env, tlb, &raddr, &ctx->prot, address, rw,
                                 access_type, i);
        if (!ret) {
        if (ret != -1) {
            break;
        }
    }