]> git.ipfire.org Git - thirdparty/qemu.git/commit
target/i386: mask high bits of CR3 in 32-bit mode
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 22 Dec 2023 08:27:36 +0000 (09:27 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 27 Feb 2024 23:23:38 +0000 (00:23 +0100)
commit68fb78d7d5723066ec2cacee7d25d67a4143b42f
tree11a643fa499a2e28707e3ebbf5cd276f020a5ade
parent84e945aad2d0cd950996a73705b4467e30ddbfa2
target/i386: mask high bits of CR3 in 32-bit mode

CR3 bits 63:32 are ignored in 32-bit mode (either legacy 2-level
paging or PAE paging).  Do this in mmu_translate() to remove
the last where get_physical_address() meaningfully drops the high
bits of the address.

Cc: qemu-stable@nongnu.org
Suggested-by: Richard Henderson <richard.henderson@linaro.org>
Fixes: 4a1e9d4d11c ("target/i386: Use atomic operations for pte updates", 2022-10-18)
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target/i386/tcg/sysemu/excp_helper.c