qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] target/riscv: Check PMP rules num before propagation


From: LIU Zhiwei
Subject: [PATCH] target/riscv: Check PMP rules num before propagation
Date: Tue, 16 Nov 2021 23:11:38 +0800

If PMP rules number is zero, it should not influence the TLB entry for
M-mode program.

Signed-off-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
---
 target/riscv/cpu_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/riscv/cpu_helper.c b/target/riscv/cpu_helper.c
index 9eeed38c7e..48da872d39 100644
--- a/target/riscv/cpu_helper.c
+++ b/target/riscv/cpu_helper.c
@@ -376,7 +376,7 @@ static int get_physical_address_pmp(CPURISCVState *env, int 
*prot,
     }
 
     *prot = pmp_priv_to_page_prot(pmp_priv);
-    if (tlb_size != NULL) {
+    if ((tlb_size != NULL) && pmp_get_num_rules(env)) {
         if (pmp_is_range_in_tlb(env, addr & ~(*tlb_size - 1), &tlb_size_pmp)) {
             *tlb_size = tlb_size_pmp;
         }
-- 
2.25.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]