diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2019-09-03 17:03:12 -0700 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2019-10-28 10:35:23 +0100 |
commit | 7f445c8c7aad0d8fca7d99a48cc8118dc82aa0f3 (patch) | |
tree | df65b6ff7d381e365ad418d0d7ee0efdf182bd3a /accel/tcg | |
parent | bb8e3ea6fa8f616678133c9e8c8c3bf232c179ec (diff) |
cputlb: Fix tlb_vaddr_to_host
Using uintptr_t instead of target_ulong meant that, for 64-bit guest
and 32-bit host, we truncated the guest address comparator and so may
not hit the tlb when we should.
Fixes: 4811e9095c0
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'accel/tcg')
-rw-r--r-- | accel/tcg/cputlb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c index 6f4194df96..5eebddcca8 100644 --- a/accel/tcg/cputlb.c +++ b/accel/tcg/cputlb.c @@ -1189,7 +1189,7 @@ void *tlb_vaddr_to_host(CPUArchState *env, abi_ptr addr, MMUAccessType access_type, int mmu_idx) { CPUTLBEntry *entry = tlb_entry(env, mmu_idx, addr); - uintptr_t tlb_addr, page; + target_ulong tlb_addr, page; size_t elt_ofs; switch (access_type) { |