[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 13/43] target-arm: Stage 2 permission fault was fixed
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PULL 13/43] target-arm: Stage 2 permission fault was fixed in AArch32 state |
Date: |
Thu, 12 May 2016 14:32:35 +0100 |
From: Sergey Sorokin <address@hidden>
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>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <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.1
- [Qemu-devel] [PULL 00/43] target-arm queue, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 19/43] target-arm/translate-a64.c: Unify some of the ldst_reg decoding, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 02/43] omap_lcdc: Remove support for DEPTH != 32, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 12/43] hw/arm/nseries: Allocating Large sized arrays to heap, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 17/43] target-arm: Split data abort syndrome generator, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 07/43] hw/intc: QOM'ify pl190.c, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 05/43] hw/intc: QOM'ify exynos4210_gic.c, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 18/43] target-arm/translate-a64.c: Use extract32 in disas_ldst_reg_imm9, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 01/43] blizzard: Remove support for DEPTH != 32, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 13/43] target-arm: Stage 2 permission fault was fixed in AArch32 state,
Peter Maydell <=
- [Qemu-devel] [PULL 11/43] bcm2835_property: use cached values when querying framebuffer, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 06/43] hw/intc: QOM'ify imx_avic.c, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 15/43] tcg: Add tcg_set_insn_param, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 23/43] ACPI: Fix the definition of proximity in AcpiSratMemoryAffinity, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 31/43] i.MX: Add sabrelite i.MX6 emulation., Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 20/43] hw/display: QOM'ify exynos4210_fimd.c, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 08/43] hw/intc: QOM'ify slavio_intctl.c, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 14/43] target-arm: Fix descriptor address masking in ARM address translation, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 24/43] ACPI: move acpi_build_srat_memory to common place, Peter Maydell, 2016/05/12
- [Qemu-devel] [PULL 04/43] hw/intc: QOM'ify exynos4210_combiner.c, Peter Maydell, 2016/05/12