summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorNick Hudson <skrll@netbsd.org>2019-04-23 07:36:21 +0100
committerRichard Henderson <richard.henderson@linaro.org>2019-04-29 14:43:39 -0700
commitaffdb7e6ba23f8160cb88e11f83db54a35f03d6b (patch)
tree97a607d306ccc446dd1c691d810717c5269d9bee
parent6797c3151095a50c959ad848c93850d907a71537 (diff)
downloadfocaccia-qemu-affdb7e6ba23f8160cb88e11f83db54a35f03d6b.tar.gz
focaccia-qemu-affdb7e6ba23f8160cb88e11f83db54a35f03d6b.zip
target/hppa: Always return EXCP_DMAR for protection id trap
The EXCP_DMP trap is considered legacy.

"In PA-RISC 1.1 (Second Edition) and later revisions, processors must use
traps 26, 27,and 28 which provide equivalent functionality"

Signed-off-by: Nick Hudson <skrll@netbsd.org>
Message-Id: <20190423063621.8203-3-nick.hudson@gmx.co.uk>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
-rw-r--r--target/hppa/mem_helper.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/target/hppa/mem_helper.c b/target/hppa/mem_helper.c
index c9b57d07c3..77fb544838 100644
--- a/target/hppa/mem_helper.c
+++ b/target/hppa/mem_helper.c
@@ -154,8 +154,7 @@ int hppa_get_physical_address(CPUHPPAState *env, vaddr addr, int mmu_idx,
 
     if (unlikely(!(prot & type))) {
         /* The access isn't allowed -- Inst/Data Memory Protection Fault.  */
-        ret = (type & PAGE_EXEC ? EXCP_IMP :
-               prot & PAGE_READ ? EXCP_DMP : EXCP_DMAR);
+        ret = (type & PAGE_EXEC) ? EXCP_IMP : EXCP_DMAR;
         goto egress;
     }