summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorPeter Maydell2018-10-18 12:35:00 +0200
committerPeter Maydell2018-10-18 12:35:00 +0200
commitb151fc0e431ae75f456e3f768bcb73c9920f70c5 (patch)
treef51b2206a8b8a62467933cacc8cbbd853bc91995 /target
parentMerge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20181016-... (diff)
parenttarget/hppa: Raise exception 26 on emulated hardware (diff)
downloadqemu-b151fc0e431ae75f456e3f768bcb73c9920f70c5.tar.gz
qemu-b151fc0e431ae75f456e3f768bcb73c9920f70c5.tar.xz
qemu-b151fc0e431ae75f456e3f768bcb73c9920f70c5.zip
Merge remote-tracking branch 'remotes/rth/tags/pull-hppa-20181016' into staging
Queued hppa patch # gpg: Signature made Tue 16 Oct 2018 23:45:46 BST # gpg: using RSA key 64DF38E8AF7E215F # gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" # Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A 05C0 64DF 38E8 AF7E 215F * remotes/rth/tags/pull-hppa-20181016: target/hppa: Raise exception 26 on emulated hardware Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target')
-rw-r--r--target/hppa/mem_helper.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/target/hppa/mem_helper.c b/target/hppa/mem_helper.c
index ab160c2a74..aecf3075f6 100644
--- a/target/hppa/mem_helper.c
+++ b/target/hppa/mem_helper.c
@@ -137,7 +137,8 @@ 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 : EXCP_DMP);
+ ret = (type & PAGE_EXEC ? EXCP_IMP :
+ prot & PAGE_READ ? EXCP_DMP : EXCP_DMAR);
goto egress;
}