From: Edgar E. Iglesias Date: Thu, 7 Nov 2013 18:43:10 +0000 (+0100) Subject: exec: Make tb_invalidate_phys_addr input an AS X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=29d8ec7beebbf4d8f6094df91ad383b98d768b32;p=qmiga%2Fqemu.git exec: Make tb_invalidate_phys_addr input an AS No functional change. Reviewed-by: Peter Maydell Signed-off-by: Edgar E. Iglesias --- diff --git a/exec.c b/exec.c index be93ebb505..05ad67d3fd 100644 --- a/exec.c +++ b/exec.c @@ -503,7 +503,8 @@ static void breakpoint_invalidate(CPUState *cpu, target_ulong pc) { hwaddr phys = cpu_get_phys_page_debug(cpu, pc); if (phys != -1) { - tb_invalidate_phys_addr(phys | (pc & ~TARGET_PAGE_MASK)); + tb_invalidate_phys_addr(&address_space_memory, + phys | (pc & ~TARGET_PAGE_MASK)); } } #endif diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h index 3b03cbfcf8..9d6c36b7a9 100644 --- a/include/exec/exec-all.h +++ b/include/exec/exec-all.h @@ -102,7 +102,7 @@ void tlb_flush(CPUArchState *env, int flush_global); void tlb_set_page(CPUArchState *env, target_ulong vaddr, hwaddr paddr, int prot, int mmu_idx, target_ulong size); -void tb_invalidate_phys_addr(hwaddr addr); +void tb_invalidate_phys_addr(AddressSpace *as, hwaddr addr); #else static inline void tlb_flush_page(CPUArchState *env, target_ulong addr) { diff --git a/target-xtensa/op_helper.c b/target-xtensa/op_helper.c index cf970257db..89a72b5678 100644 --- a/target-xtensa/op_helper.c +++ b/target-xtensa/op_helper.c @@ -29,6 +29,7 @@ #include "helper.h" #include "qemu/host-utils.h" #include "exec/softmmu_exec.h" +#include "exec/address-spaces.h" static void do_unaligned_access(CPUXtensaState *env, target_ulong addr, int is_write, int is_user, uintptr_t retaddr); @@ -90,7 +91,7 @@ static void tb_invalidate_virtual_addr(CPUXtensaState *env, uint32_t vaddr) int ret = xtensa_get_physical_addr(env, false, vaddr, 2, 0, &paddr, &page_size, &access); if (ret == 0) { - tb_invalidate_phys_addr(paddr); + tb_invalidate_phys_addr(&address_space_memory, paddr); } } diff --git a/translate-all.c b/translate-all.c index 543e1ffe77..1ac0246dab 100644 --- a/translate-all.c +++ b/translate-all.c @@ -1357,13 +1357,13 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr) } #if defined(TARGET_HAS_ICE) && !defined(CONFIG_USER_ONLY) -void tb_invalidate_phys_addr(hwaddr addr) +void tb_invalidate_phys_addr(AddressSpace *as, hwaddr addr) { ram_addr_t ram_addr; MemoryRegion *mr; hwaddr l = 1; - mr = address_space_translate(&address_space_memory, addr, &addr, &l, false); + mr = address_space_translate(as, addr, &addr, &l, false); if (!(memory_region_is_ram(mr) || memory_region_is_romd(mr))) { return;