qemu/target/i386/tcg/sysemu
Pierrick Bouvier 7ba055b49b target/i386: fix hang when using slow path for ptw_setl
When instrumenting memory accesses for plugin, we force memory accesses
to use the slow path for mmu [1]. This create a situation where we end
up calling ptw_setl_slow. This was fixed recently in [2] but the issue
still could appear out of plugins use case.

Since this function gets called during a cpu_exec, start_exclusive then
hangs. This exclusive section was introduced initially for security
reasons [3].

I suspect this code path was never triggered, because ptw_setl_slow
would always be called transitively from cpu_exec, resulting in a hang.

[1] 6d03226b42
[2] 115ade42d5
[3] https://gitlab.com/qemu-project/qemu/-/issues/279

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/2566
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20241025175857.2554252-2-pierrick.bouvier@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2024-11-16 08:42:25 -08:00
..
bpt_helper.c target/i386: document incorrect semantics of watchpoint following MOV/POP SS 2024-06-08 10:33:38 +02:00
excp_helper.c target/i386: fix hang when using slow path for ptw_setl 2024-11-16 08:42:25 -08:00
fpu_helper.c system/cpus: rename qemu_mutex_lock_iothread() to bql_lock() 2024-01-08 10:45:43 -05:00
meson.build meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
misc_helper.c target/i386: replace read_crN helper with read_cr8 2024-06-17 09:47:39 +02:00
seg_helper.c target/i386: fix TF/RF handling for HLT 2024-06-08 10:33:38 +02:00
smm_helper.c i386: split smm helper (sysemu) 2021-05-10 15:41:51 -04:00
svm_helper.c target/i386: fix INHIBIT_IRQ/TF/RF handling for VMRUN 2024-06-08 10:33:38 +02:00
tcg-cpu.c i386: split off sysemu-only functionality in tcg-cpu 2021-05-10 15:41:50 -04:00