cpus: properly kick CPUs out of inner execution loop

Now that cpu_exit() actually kicks all accelerators, use it whenever
the message to another thread is processed in qemu_wait_io_event().

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2025-08-01 13:50:04 +02:00
parent dcb46ecb2e
commit f8217ae54e
9 changed files with 17 additions and 14 deletions

View file

@ -118,7 +118,8 @@ void replay_add_event(ReplayAsyncEventKind event_kind,
g_assert(replay_mutex_locked());
QTAILQ_INSERT_TAIL(&events_list, event, events);
qemu_cpu_kick(first_cpu);
/* Kick the TCG thread out of tcg_cpu_exec(). */
cpu_exit(first_cpu);
}
void replay_bh_schedule_event(QEMUBH *bh)