qemu/softmmu
Richard Henderson d9ec18a0fc 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>
(cherry picked from commit 0d58c660689f6da1e3feff8a997014003d928b3b)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2023-10-03 02:00:54 +03:00
..
arch_init.c
balloon.c
bootdevice.c
cpu-throttle.c
cpu-timers.c
cpus.c atomics: eliminate mb_read/mb_set 2023-06-06 09:42:14 +02:00
datadir.c
device_tree.c
dirtylimit.c migration: Extend query-migrate to provide dirty page limit info 2023-07-26 10:55:56 +02:00
dma-helpers.c
globals.c accel/tcg: Use one_insn_per_tb global instead of old singlestep global 2023-05-02 15:47:40 +01:00
icount.c icount: don't adjust virtual time backwards after warp 2023-06-27 09:00:13 +02:00
ioport.c softmmu/ioport.c: make MemoryRegionPortioList owner of portio_list MemoryRegions 2023-05-25 10:18:33 +02:00
main.c
memory.c hostmem-file: add offset option 2023-05-23 16:47:03 +02:00
memory_mapping.c
meson.build meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
physmem.c softmmu: Use async_run_on_cpu in tcg_commit 2023-10-03 02:00:54 +03:00
qdev-monitor.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
qemu-seccomp.c
qtest.c softmmu: Make qtest.c target independent 2023-04-20 11:25:32 +02:00
rtc.c
runstate-action.c
runstate-hmp-cmds.c hmp: Add 'one-insn-per-tb' command equivalent to 'singlestep' 2023-05-02 15:47:40 +01:00
runstate.c qemu_cleanup: begin drained section after vm_shutdown() 2023-07-07 12:49:22 +02:00
timers-state.h
tpm-hmp-cmds.c
tpm.c
trace-events
trace.h
vl.c softmmu/vl.c: Disable default NIC if it has not been compiled into the binary 2023-05-22 09:39:15 +02:00
watchpoint.c softmmu: Restore use of CPU watchpoint for all accelerators 2023-03-28 15:24:06 -07:00