commit | 0d58c660689f6da1e3feff8a997014003d928b3b | [log] [tgz] |
---|---|---|
author | Richard Henderson <richard.henderson@linaro.org> | Fri Aug 25 16:13:17 2023 -0700 |
committer | Richard Henderson <richard.henderson@linaro.org> | Tue Aug 29 09:55:06 2023 -0700 |
tree | 081ceb163f15f146b86d9ecc64e56f85f3fd6454 | |
parent | 86e4f93d827d3c1efd00cd8a906e38a2c0f2b5bc [diff] |
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>