[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH] target-arm: Stage 2 permission fault was fixed in AAr
From: |
Sergey Sorokin |
Subject: |
[Qemu-arm] [PATCH] target-arm: Stage 2 permission fault was fixed in AArch32 state |
Date: |
Mon, 18 Apr 2016 21:00:00 +0300 |
As described in AArch32.CheckS2Permission an instruction fetch fails if
XN bit is set or there is no read permission for the address.
Signed-off-by: Sergey Sorokin <address@hidden>
---
target-arm/helper.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index 09638b2..59efb90 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -6708,7 +6708,9 @@ static int get_S2prot(CPUARMState *env, int s2ap, int xn)
prot |= PAGE_WRITE;
}
if (!xn) {
- prot |= PAGE_EXEC;
+ if (arm_el_is_aa64(env, 2) || prot & PAGE_READ) {
+ prot |= PAGE_EXEC;
+ }
}
return prot;
}
--
1.9.3
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-arm] [PATCH] target-arm: Stage 2 permission fault was fixed in AArch32 state,
Sergey Sorokin <=