summary refs log tree commit diff stats
path: root/tcg/tcg-op-vec.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2023-08-25 16:13:17 -0700
committerRichard Henderson <richard.henderson@linaro.org>2023-08-29 09:55:06 -0700
commit0d58c660689f6da1e3feff8a997014003d928b3b (patch)
tree081ceb163f15f146b86d9ecc64e56f85f3fd6454 /tcg/tcg-op-vec.c
parent86e4f93d827d3c1efd00cd8a906e38a2c0f2b5bc (diff)
downloadfocaccia-qemu-0d58c660689f6da1e3feff8a997014003d928b3b.tar.gz
focaccia-qemu-0d58c660689f6da1e3feff8a997014003d928b3b.zip
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 'tcg/tcg-op-vec.c')
0 files changed, 0 insertions, 0 deletions