From b5ce6809b4b47e6cd414c9ce9449b114cd5c657f Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Mon, 2 Feb 2026 10:17:53 +0100 Subject: [PATCH] Revert "tcg/user: do not set exit_request gratuitously" This reverts commit b422a7bff64eaf55b8250225533ca1df42c3777e. The reporter says "The commit breaks go; if you run go build in a loop, it eventually hangs uninterruptible (except -9) with a couple of zombie children left over". Reported-by: Andreas Schwab Signed-off-by: Paolo Bonzini Reviewed-by: Richard Henderson Signed-off-by: Richard Henderson Message-ID: <20260202091753.28459-1-pbonzini@redhat.com> (cherry picked from commit 251a3d4ca3c961d95cd624252a178a33066455a2) Signed-off-by: Michael Tokarev --- accel/tcg/cpu-exec.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c index 7c20d9db12..ad94f96b25 100644 --- a/accel/tcg/cpu-exec.c +++ b/accel/tcg/cpu-exec.c @@ -751,7 +751,6 @@ static inline bool cpu_handle_exception(CPUState *cpu, int *ret) void tcg_kick_vcpu_thread(CPUState *cpu) { -#ifndef CONFIG_USER_ONLY /* * Ensure cpu_exec will see the reason why the exit request was set. * FIXME: this is not always needed. Other accelerators instead @@ -759,7 +758,6 @@ void tcg_kick_vcpu_thread(CPUState *cpu) * CPU thread; see kvm_arch_pre_run() for example. */ qatomic_store_release(&cpu->exit_request, true); -#endif /* Ensure cpu_exec will see the exit request after TCG has exited. */ qatomic_store_release(&cpu->neg.icount_decr.u16.high, -1);