The cpu->exit_request check in cpu_loop_exec_tb is unnecessary, because cpu->tcg_exit_req is always set after cpu->exit_request. So let the TB exit and we will pick up the exit request later in cpu_handle_interrupt.
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- cpu-exec.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/cpu-exec.c b/cpu-exec.c index 7ddf66c..7db959c 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -535,10 +535,6 @@ static inline void cpu_loop_exec_tb(CPUState *cpu, TranslationBlock *tb, uintptr_t ret; int32_t insns_left; - if (unlikely(atomic_read(&cpu->exit_request))) { - return; - } - trace_exec_tb(tb, tb->pc); ret = cpu_tb_exec(cpu, tb); tb = (TranslationBlock *)(ret & ~TB_EXIT_MASK); -- 1.8.3.1