diff options
author | Mikhail Ilyin <m.ilin@samsung.com> | 2014-09-08 17:28:56 +0400 |
---|---|---|
committer | Riku Voipio <riku.voipio@linaro.org> | 2014-10-06 21:53:35 +0300 |
commit | 1a1c4db9b298956e89caf53b09b6a7a960d55d66 (patch) | |
tree | 571bd286415d0a7e877327695107985a2f304909 /include/exec/cpu-all.h | |
parent | d80a1905942afecafc04dba4bf51103cd30d37a1 (diff) | |
download | qemu-1a1c4db9b298956e89caf53b09b6a7a960d55d66.zip |
translate-all.c: memory walker initial address miscalculation
The initial base address is miscalculated in walk_memory_regions().
It has to be shifted TARGET_PAGE_BITS more. Holder variables are
extended to target_ulong size otherwise they don't fit for MIPS N32
(a 32-bit ABI with a 64-bit address space) and qemu won't compile.
The issue led to incorrect debug output of memory maps and a
mis-formed coredumped file.
Signed-off-by: Mikhail Ilyin <m.ilin@samsung.com>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to 'include/exec/cpu-all.h')
-rw-r--r-- | include/exec/cpu-all.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index f9d132fc0b..c085804aed 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -232,8 +232,8 @@ extern uintptr_t qemu_host_page_mask; #if defined(CONFIG_USER_ONLY) void page_dump(FILE *f); -typedef int (*walk_memory_regions_fn)(void *, abi_ulong, - abi_ulong, unsigned long); +typedef int (*walk_memory_regions_fn)(void *, target_ulong, + target_ulong, unsigned long); int walk_memory_regions(void *, walk_memory_regions_fn); int page_get_flags(target_ulong address); |