[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 01/10] target-i386: mmu: use pg_mode instead of HF_LMA_MASK
From: |
Paolo Bonzini |
Subject: |
[PULL 01/10] target-i386: mmu: use pg_mode instead of HF_LMA_MASK |
Date: |
Mon, 8 Nov 2021 15:36:07 +0100 |
Correctly look up the paging mode of the hypervisor when it is using 64-bit
mode but the guest is not.
Fixes: 68746930ae ("target/i386: use mmu_translate for NPT walk", 2021-05-11)
Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
target/i386/tcg/sysemu/excp_helper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/target/i386/tcg/sysemu/excp_helper.c
b/target/i386/tcg/sysemu/excp_helper.c
index 7af887be4d..492b777de9 100644
--- a/target/i386/tcg/sysemu/excp_helper.c
+++ b/target/i386/tcg/sysemu/excp_helper.c
@@ -90,7 +90,7 @@ static int mmu_translate(CPUState *cs, hwaddr addr,
MMUTranslateFunc get_hphys_f
target_ulong pdpe_addr;
#ifdef TARGET_X86_64
- if (env->hflags & HF_LMA_MASK) {
+ if (pg_mode & PG_MODE_LMA) {
bool la57 = pg_mode & PG_MODE_LA57;
uint64_t pml5e_addr, pml5e;
uint64_t pml4e_addr, pml4e;
@@ -287,7 +287,7 @@ do_check_protect_pse36:
*prot |= PAGE_EXEC;
}
- if (!(env->hflags & HF_LMA_MASK)) {
+ if (!(pg_mode & PG_MODE_LMA)) {
pkr = 0;
} else if (ptep & PG_USER_MASK) {
pkr = pg_mode & PG_MODE_PKE ? env->pkru : 0;
--
2.33.1
- [PULL 00/10] Misc QEMU bugfixes for 6.2 hard freeze, Paolo Bonzini, 2021/11/08
- [PULL 01/10] target-i386: mmu: use pg_mode instead of HF_LMA_MASK,
Paolo Bonzini <=
- [PULL 06/10] configure: simplify calls to meson_quote, Paolo Bonzini, 2021/11/08
- [PULL 08/10] configure: propagate --extra-cflags and --extra-ldflags to meson compile tests, Paolo Bonzini, 2021/11/08
- [PULL 02/10] target-i386: mmu: fix handling of noncanonical virtual addresses, Paolo Bonzini, 2021/11/08
- [PULL 04/10] meson: perform snappy test with the C++ compiler if used, Paolo Bonzini, 2021/11/08
- [PULL 07/10] configure: preserve CFLAGS, CXXFLAGS and LDFLAGS in config.status, Paolo Bonzini, 2021/11/08
- [PULL 03/10] hw/scsi/scsi-disk: MODE_PAGE_ALLS not allowed in MODE SELECT commands, Paolo Bonzini, 2021/11/08
- [PULL 09/10] configure: ignore preexisting QEMU_*FLAGS envvars, Paolo Bonzini, 2021/11/08
- [PULL 10/10] ui/gtk-egl: Fix build failure when libgbm is not available, Paolo Bonzini, 2021/11/08
- [PULL 05/10] docs: adjust for demise of scripts/create_config, Paolo Bonzini, 2021/11/08