aboutsummaryrefslogtreecommitdiff
path: root/docs/system
diff options
context:
space:
mode:
authorArd Biesheuvel <ardb@kernel.org>2024-09-27 09:10:51 +0200
committerPeter Maydell <peter.maydell@linaro.org>2024-10-01 13:55:38 +0100
commit67d762e716a7127ecc114e9708254316dd521911 (patch)
treeaf7468cbd28889d2257224ee92b9f38af5b3075a /docs/system
parent1efbcf0b7f9a1eb63161da2b97d7616d1303a2f4 (diff)
downloadqemu-67d762e716a7127ecc114e9708254316dd521911.zip
qemu-67d762e716a7127ecc114e9708254316dd521911.tar.gz
qemu-67d762e716a7127ecc114e9708254316dd521911.tar.bz2
target/arm: Avoid target_ulong for physical address lookups
target_ulong is typedef'ed as a 32-bit integer when building the qemu-system-arm target, and this is smaller than the size of an intermediate physical address when LPAE is being used. Given that Linux may place leaf level user page tables in high memory when built for LPAE, the kernel will crash with an external abort as soon as it enters user space when running with more than ~3 GiB of system RAM. So replace target_ulong with vaddr in places where it may carry an address value that is not representable in 32 bits. Fixes: f3639a64f602ea ("target/arm: Use softmmu tlbs for page table walking") Cc: qemu-stable@nongnu.org Reported-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Message-id: 20240927071051.1444768-1-ardb+git@google.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'docs/system')
0 files changed, 0 insertions, 0 deletions