qemu/accel/tcg
Richard Henderson daf8f84e74 accel/tcg: Properly unlink a TB linked to itself
When we remove dest from orig's links, we lose the link
that we rely on later to reset links.  This can lead to
failure to release from spinlock with self-modifying code.

Cc: qemu-stable@nongnu.org
Reported-by: 李威威 <liweiwei@kubuds.cn>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Tested-by: Anton Johansson <anjo@rev.ng>
(cherry picked from commit 03fe665980)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2025-09-26 09:58:36 +03:00
..
atomic_common.c.inc plugins: save value during memory accesses 2024-09-19 15:58:01 +01:00
atomic_template.h include/exec: Use vaddr for *_mmu guest memory access routines 2025-04-23 14:08:17 -07:00
backend-ldst.h tcg: Move cpu_req_mo() macro to target-agnostic 'backend-ldst.h' 2025-04-23 15:07:32 -07:00
cpu-exec-common.c accel: Forward-declare AccelOpsClass in 'qemu/typedefs.h' 2025-03-06 15:46:18 +01:00
cpu-exec.c accel/tcg: Assert TCGCPUOps.pointer_wrap is set 2025-05-28 08:08:48 +01:00
cputlb.c accel/tcg: Assert TCGCPUOps.pointer_wrap is set 2025-05-28 08:08:48 +01:00
icount-common.c include/exec: Split out icount.h 2025-04-23 14:08:44 -07:00
internal-common.h accel/tcg: Implement AccelClass::get_stats() handler 2025-07-15 19:34:33 +02:00
ldst_atomicity.c.inc accel/tcg: add tracepoints for cpu_loop_exit_atomic 2024-10-24 09:56:26 +01:00
ldst_common.c.inc accel/tcg: Use vaddr for plugin_{load,store}_cb 2025-05-05 09:24:10 -07:00
meson.build accel/tcg: Extract statistic related code to tcg-stats.c 2025-07-15 19:34:33 +02:00
monitor.c accel/tcg: Propagate AccelState to dump_accel_info() 2025-07-15 19:34:33 +02:00
plugin-gen.c plugins: Add enforcement of QEMU_PLUGIN_CB flags in register R/W callbacks 2025-07-02 10:09:48 +01:00
tb-context.h tcg: Move tb_phys_invalidate_count to tb_ctx 2021-07-09 09:38:33 -07:00
tb-hash.h accel/tcg: Compile tb-maint.c twice 2025-04-30 12:45:05 -07:00
tb-internal.h accel/tcg: Add CPUState arg to tb_invalidate_phys_range_fast 2025-04-30 12:45:05 -07:00
tb-jmp-cache.h tcg: remove CPU* types from typedefs.h 2024-05-03 15:47:48 +02:00
tb-maint.c accel/tcg: Properly unlink a TB linked to itself 2025-09-26 09:58:36 +03:00
tcg-accel-ops-icount.c include/exec: Split out icount.h 2025-04-23 14:08:44 -07:00
tcg-accel-ops-icount.h accel/tcg/tcg-accel-ops-rr: ensure fairness with icount 2023-05-11 09:53:41 +01:00
tcg-accel-ops-mttcg.c accel/tcg: Clear exit_request once in tcg_cpu_exec() 2025-07-04 14:43:45 +02:00
tcg-accel-ops-mttcg.h Clean up header guards that don't match their file name 2022-05-11 16:49:06 +02:00
tcg-accel-ops-rr.c Revert "accel/tcg: Unregister the RCU before exiting RR thread" 2025-07-15 19:34:33 +02:00
tcg-accel-ops-rr.h Clean up header guards that don't match their file name 2022-05-11 16:49:06 +02:00
tcg-accel-ops.c accel: Extract AccelClass definition to 'accel/accel-ops.h' 2025-07-15 19:34:33 +02:00
tcg-accel-ops.h include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
tcg-all.c accel/tcg: Implement AccelClass::get_stats() handler 2025-07-15 19:34:33 +02:00
tcg-runtime-gvec.c accel/tcg: Build tcg-runtime-gvec.c once 2025-03-08 10:06:48 -08:00
tcg-runtime.c accel/tcg: Build tcg-runtime.c once 2025-03-08 10:06:31 -08:00
tcg-runtime.h tcg: Add gvec compare with immediate and scalar operand 2023-09-16 14:57:15 +00:00
tcg-stats.c accel/tcg: Implement AccelClass::get_stats() handler 2025-07-15 19:34:33 +02:00
tlb-bounds.h accel/tcg: Simplify CPU_TLB_DYN_MAX_BITS 2025-04-30 12:45:05 -07:00
trace-events accel/tcg: add tracepoints for cpu_loop_exit_atomic 2024-10-24 09:56:26 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
translate-all.c tcg: Drop TCGContext.page_{mask,bits} 2025-05-28 08:08:47 +01:00
translator.c exec: Restrict 'cpu-ldst-common.h' to accel/tcg/ 2025-04-23 15:07:32 -07:00
user-exec-stub.c accel/tcg: Restrict tlb_init() / destroy() to TCG 2025-03-06 15:46:17 +01:00
user-exec.c accel/tcg: Build user-exec.c once 2025-05-05 09:24:10 -07:00
vcpu-state.h licenses: Remove SPDX tags not being license identifier for Linaro 2025-01-30 13:01:22 +03:00
watchpoint.c accel/tcg: Remove mmap_lock/unlock from watchpoint.c 2025-04-23 14:08:17 -07:00