You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/target/i386/tcg
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>
3 weeks ago
..
sysemu target/i386: fix hang when using slow path for ptw_setl 3 weeks ago
user
access.c target/i386: allow access_ptr to force slow path on failed probe 4 months ago
access.h
bpt_helper.c
cc_helper.c target/i386: use compiler builtin to compute PF 1 month ago
cc_helper_template.h.inc target/i386: use + to put flags together 1 month ago
decode-new.c.inc target/i386: Wrap cc_op_live with a validity check 1 month ago
decode-new.h target/i386: convert CMPXCHG8B/CMPXCHG16B to new decoder 2 months ago
emit.c.inc target/i386: Wrap cc_op_live with a validity check 1 month ago
excp_helper.c
fpu_helper.c target/i386: Set 2-NaN propagation rule explicitly 4 weeks ago
helper-tcg.h target/i386: use compiler builtin to compute PF 1 month ago
int_helper.c target/i386: use compiler builtin to compute PF 1 month ago
mem_helper.c
meson.build
misc_helper.c target/i386: fix INHIBIT_IRQ/TF/RF handling for PAUSE 6 months ago
mpx_helper.c
ops_sse_header.h.inc
seg_helper.c target/i386: Fix legacy page table walk 4 weeks ago
seg_helper.h
tcg-cpu.c
tcg-cpu.h
tcg-stub.c
translate.c target/i386: add a note about gen_jcc1 1 month ago