target/i386: Reorg GET_HPHYS
commit9bbcf372193a2064743461aea5bf59cc83e37aa9
authorRichard Henderson <richard.henderson@linaro.org>
Sun, 2 Oct 2022 17:29:51 +0000 (2 10:29 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 18 Oct 2022 11:58:04 +0000 (18 13:58 +0200)
tree32e4a7edcd17a4a089dcdc723fb6171b0a2468a1
parent3563362ddfaefcb2866c91abed4294e3a187d6d3
target/i386: Reorg GET_HPHYS

Replace with PTE_HPHYS for the page table walk, and a direct call
to mmu_translate for the final stage2 translation.  Hoist the check
for HF2_NPT_MASK out to get_physical_address, which avoids the
recursive call when stage2 is disabled.

We can now return all the way out to x86_cpu_tlb_fill before raising
an exception, which means probe works.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20221002172956.265735-5-richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
target/i386/tcg/sysemu/excp_helper.c