[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 7/7] target/arm: Set ARMMMUFaultInfo.level in user-only arm_cpu_tl
From: |
Peter Maydell |
Subject: |
[PULL 7/7] target/arm: Set ARMMMUFaultInfo.level in user-only arm_cpu_tlb_fill |
Date: |
Tue, 23 Mar 2021 14:26:53 +0000 |
From: Richard Henderson <richard.henderson@linaro.org>
Pretend the fault always happens at page table level 3.
Failure to set this leaves level = 0, which is impossible for
ARMFault_Permission, and produces an invalid syndrome, which
reaches g_assert_not_reached in cpu_loop.
Fixes: 8db94ab4e5db ("linux-user/aarch64: Pass syndrome to EXC_*_ABORT")
Reported-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20210320000606.1788699-1-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target/arm/tlb_helper.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/target/arm/tlb_helper.c b/target/arm/tlb_helper.c
index 9609333cbdf..3107f9823ef 100644
--- a/target/arm/tlb_helper.c
+++ b/target/arm/tlb_helper.c
@@ -163,6 +163,7 @@ bool arm_cpu_tlb_fill(CPUState *cs, vaddr address, int size,
} else {
fi.type = ARMFault_Translation;
}
+ fi.level = 3;
/* now we have a real cpu fault */
cpu_restore_state(cs, retaddr, true);
--
2.20.1
- [PULL 0/7] target-arm queue, Peter Maydell, 2021/03/23
- [PULL 3/7] memory: Document flatview_for_each_range(), Peter Maydell, 2021/03/23
- [PULL 4/7] memory: Add offset_in_region to flatview_cb arguments, Peter Maydell, 2021/03/23
- [PULL 7/7] target/arm: Set ARMMMUFaultInfo.level in user-only arm_cpu_tlb_fill,
Peter Maydell <=
- [PULL 5/7] hw/core/loader: Add new function rom_ptr_for_as(), Peter Maydell, 2021/03/23
- [PULL 6/7] target/arm: Make M-profile VTOR loads on reset handle memory aliasing, Peter Maydell, 2021/03/23
- [PULL 1/7] hw/arm/virt: Disable pl011 clock migration if needed, Peter Maydell, 2021/03/23
- [PULL 2/7] memory: Make flatview_cb return bool, not int, Peter Maydell, 2021/03/23
- Re: [PULL 0/7] target-arm queue, Peter Maydell, 2021/03/23