]> 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)
committerMichael Tokarev <mjt@tls.msk.ru>
Wed, 28 Feb 2024 18:02:59 +0000 (21:02 +0300)
commit6156ca0da12c545cf6be0a964ebdac4b8eb50f2b
treea88618c85995db5af3c798b3ba7c4f3bcd812d46
parent77f7beb8cfe6266a5823737028809f749be608f3
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>
(cherry picked from commit 68fb78d7d5723066ec2cacee7d25d67a4143b42f)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
target/i386/tcg/sysemu/excp_helper.c