From: Richard Henderson <[email protected]>

Do not go through the effort of grabbing the exclusive lock
only to check for interrupts and exit without making progress.

Cc: [email protected]
Signed-off-by: Richard Henderson <[email protected]>
Tested-by: Mikulas Patocka <[email protected]>
Signed-off-by: Helge Deller <[email protected]>
(cherry picked from commit 460da0e55c31694156d545097569e1e14052cd46)
(Mjt: adjust for 10.0.x across v10.0.0-561-g4759aae43235
 "accel/tcg: Return TCGTBCPUState from cpu_get_tb_cpu_state")
Signed-off-by: Michael Tokarev <[email protected]>

diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
index ef3d967e3af..27f69b1a4a2 100644
--- a/accel/tcg/cpu-exec.c
+++ b/accel/tcg/cpu-exec.c
@@ -580,7 +580,7 @@ void cpu_exec_step_atomic(CPUState *cpu)
         /* Execute in a serial context. */
         cflags &= ~CF_PARALLEL;
         /* After 1 insn, return and release the exclusive lock. */
-        cflags |= CF_NO_GOTO_TB | CF_NO_GOTO_PTR | 1;
+        cflags |= CF_NO_GOTO_TB | CF_NO_GOTO_PTR | CF_NOIRQ | 1;
         /*
          * No need to check_for_breakpoints here.
          * We only arrive in cpu_exec_step_atomic after beginning execution
-- 
2.47.3


Reply via email to