]> xenbits.xensource.com Git - people/aperard/qemu-dm.git/commitdiff
plugins/loader: fix deadlock when resetting/uninstalling a plugin
authorPierrick Bouvier <pierrick.bouvier@linaro.org>
Fri, 4 Apr 2025 03:20:26 +0000 (20:20 -0700)
committerAlex Bennée <alex.bennee@linaro.org>
Wed, 9 Apr 2025 09:35:29 +0000 (10:35 +0100)
Reported and fixed by Dmitry Kurakin.

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/2901
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20250404032027.430575-2-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
plugins/loader.c

index 7523d554f034b3ac70240fc2ba975774793e5367..0d6e082e1704662dab90610fd4e1db81be3b02c9 100644 (file)
@@ -370,7 +370,7 @@ static void plugin_reset_destroy(struct qemu_plugin_reset_data *data)
 {
     qemu_rec_mutex_lock(&plugin.lock);
     plugin_reset_destroy__locked(data);
-    qemu_rec_mutex_lock(&plugin.lock);
+    qemu_rec_mutex_unlock(&plugin.lock);
 }
 
 static void plugin_flush_destroy(CPUState *cpu, run_on_cpu_data arg)