Unverified Commit db21e6f7 authored by Hesham Almatary's avatar Hesham Almatary Committed by Palmer Dabbelt
Browse files

RISC-V: Fix a PMP check with the correct access size



The PMP check should be of the memory access size rather
than TARGET_PAGE_SIZE.

Signed-off-by: default avatarHesham Almatary <Hesham.Almatary@cl.cam.ac.uk>
Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
Signed-off-by: default avatarPalmer Dabbelt <palmer@sifive.com>
parent f8162068
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -452,8 +452,7 @@ bool riscv_cpu_tlb_fill(CPUState *cs, vaddr address, int size,

    if (riscv_feature(env, RISCV_FEATURE_PMP) &&
        (ret == TRANSLATE_SUCCESS) &&
        !pmp_hart_has_privs(env, pa, TARGET_PAGE_SIZE, 1 << access_type,
        mode)) {
        !pmp_hart_has_privs(env, pa, size, 1 << access_type, mode)) {
        ret = TRANSLATE_PMP_FAIL;
    }
    if (ret == TRANSLATE_PMP_FAIL) {