exec: introduce cpu_reload_memory_map

This for now is a simple TLB flush. This can change later for two
reasons:

1) an AddressSpaceDispatch will be cached in the CPUState object

2) it will not be possible to do tlb_flush once the TCG-generated code
runs outside the BQL.

Backports commit 76e5c76f2e2e0d20bab2cd5c7a87452f711654fb from qemu
This commit is contained in:
Paolo Bonzini 2018-02-12 15:09:20 -05:00 committed by Lioncash
parent 8287ec801e
commit 3fbda890df
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7
17 changed files with 22 additions and 1 deletions

View file

@ -92,6 +92,7 @@ void tb_invalidate_phys_page_range(struct uc_struct *uc, tb_page_addr_t start, t
void tb_invalidate_phys_range(struct uc_struct *uc, tb_page_addr_t start, tb_page_addr_t end,
int is_cpu_write_access);
#if !defined(CONFIG_USER_ONLY)
void cpu_reload_memory_map(CPUState *cpu);
void tcg_cpu_address_space_init(CPUState *cpu, AddressSpace *as);
/* cputlb.c */
void tlb_flush_page(CPUState *cpu, target_ulong addr);