diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2023-08-25 16:13:17 -0700 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2023-08-29 09:55:06 -0700 |
commit | 0d58c660689f6da1e3feff8a997014003d928b3b (patch) | |
tree | 081ceb163f15f146b86d9ecc64e56f85f3fd6454 /include/exec | |
parent | 86e4f93d827d3c1efd00cd8a906e38a2c0f2b5bc (diff) | |
download | qemu-0d58c660689f6da1e3feff8a997014003d928b3b.zip qemu-0d58c660689f6da1e3feff8a997014003d928b3b.tar.gz qemu-0d58c660689f6da1e3feff8a997014003d928b3b.tar.bz2 |
softmmu: Use async_run_on_cpu in tcg_commit
After system startup, run the update to memory_dispatch
and the tlb_flush on the cpu. This eliminates a race,
wherein a running cpu sees the memory_dispatch change
but has not yet seen the tlb_flush.
Since the update now happens on the cpu, we need not use
qatomic_rcu_read to protect the read of memory_dispatch.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1826
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1834
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1846
Tested-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'include/exec')
-rw-r--r-- | include/exec/cpu-common.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/exec/cpu-common.h b/include/exec/cpu-common.h index 87dc9a7..41788c0 100644 --- a/include/exec/cpu-common.h +++ b/include/exec/cpu-common.h @@ -133,7 +133,6 @@ static inline void cpu_physical_memory_write(hwaddr addr, { cpu_physical_memory_rw(addr, (void *)buf, len, true); } -void cpu_reloading_memory_map(void); void *cpu_physical_memory_map(hwaddr addr, hwaddr *plen, bool is_write); |