From: Philippe Mathieu-Daudé Date: Tue, 1 Jul 2025 14:08:32 +0000 (+0100) Subject: target/arm/hvf: Directly re-lock BQL after hv_vcpu_run() X-Git-Tag: v10.1.0-rc0~37^2~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=30484a6635161e8bd62014542c5fd15bbf14834f;p=thirdparty%2Fqemu.git target/arm/hvf: Directly re-lock BQL after hv_vcpu_run() Keep bql_unlock() / bql_lock() close. Signed-off-by: Philippe Mathieu-Daudé Acked-by: Richard Henderson Reviewed-by: Pierrick Bouvier Message-id: 20250623121845.7214-6-philmd@linaro.org Signed-off-by: Peter Maydell --- diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index 5c95ccc5b8d..3c234f7b112 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -1915,7 +1915,9 @@ int hvf_vcpu_exec(CPUState *cpu) flush_cpu_state(cpu); bql_unlock(); - assert_hvf_ok(hv_vcpu_run(cpu->accel->fd)); + r = hv_vcpu_run(cpu->accel->fd); + bql_lock(); + assert_hvf_ok(r); /* handle VMEXIT */ uint64_t exit_reason = hvf_exit->reason; @@ -1923,7 +1925,6 @@ int hvf_vcpu_exec(CPUState *cpu) uint32_t ec = syn_get_ec(syndrome); ret = 0; - bql_lock(); switch (exit_reason) { case HV_EXIT_REASON_EXCEPTION: /* This is the main one, handle below. */