Commit b4579255d1 for qemu.org
commit b4579255d1d6d723abeef4825e4805524451f318
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: Thu Jan 8 15:03:09 2026 -0800
qdev: make release_drive() idempotent
So it can eventually be called multiple times safely.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Link: https://lore.kernel.org/r/20250429140306.190384-3-marcandre.lureau@redhat.com
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Link: https://lore.kernel.org/r/20260108230311.584141-4-csomani@redhat.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c
index fe5464c7da..a402321f42 100644
--- a/hw/core/qdev-properties-system.c
+++ b/hw/core/qdev-properties-system.c
@@ -232,6 +232,7 @@ static void release_drive(Object *obj, const char *name, void *opaque)
if (*ptr) {
blockdev_auto_del(*ptr);
blk_detach_dev(*ptr, dev);
+ *ptr = NULL;
}
}