diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2023-01-26 13:31:34 -1000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2023-02-03 12:59:21 +0000 |
commit | 9d2617ac7d3139d870ba14204aedd74395990192 (patch) | |
tree | 659be43d038c8686727a6c129872ba3432f199be | |
parent | a431ab0e4ef7fcff4349fd8453d0ea5f06ec2617 (diff) | |
download | qemu-9d2617ac7d3139d870ba14204aedd74395990192.zip qemu-9d2617ac7d3139d870ba14204aedd74395990192.tar.gz qemu-9d2617ac7d3139d870ba14204aedd74395990192.tar.bz2 |
target/arm: Fix physical address resolution for Stage2
Conversion to probe_access_full missed applying the page offset.
Cc: qemu-stable@nongnu.org
Reported-by: Sid Manning <sidneym@quicinc.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230126233134.103193-1-richard.henderson@linaro.org
Fixes: f3639a64f602 ("target/arm: Use softmmu tlbs for page table walking")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r-- | target/arm/ptw.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/target/arm/ptw.c b/target/arm/ptw.c index 57f3615..2b125ff 100644 --- a/target/arm/ptw.c +++ b/target/arm/ptw.c @@ -266,7 +266,7 @@ static bool S1_ptw_translate(CPUARMState *env, S1Translate *ptw, if (unlikely(flags & TLB_INVALID_MASK)) { goto fail; } - ptw->out_phys = full->phys_addr; + ptw->out_phys = full->phys_addr | (addr & ~TARGET_PAGE_MASK); ptw->out_rw = full->prot & PAGE_WRITE; pte_attrs = full->pte_attrs; pte_secure = full->attrs.secure; |