Skip to content

Commit

Permalink
RISC-V: Fix a PMP check with the correct access size
Browse files Browse the repository at this point in the history
The PMP check should be of the memory access size rather
than TARGET_PAGE_SIZE.

Signed-off-by: Hesham Almatary <Hesham.Almatary@cl.cam.ac.uk>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
  • Loading branch information
heshamelmatary authored and palmer-dabbelt committed Jun 24, 2019
1 parent f816206 commit db21e6f
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions target/riscv/cpu_helper.c
Expand Up @@ -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) {
Expand Down

0 comments on commit db21e6f

Please sign in to comment.