From: Peter Krempa Date: Fri, 3 Nov 2023 13:29:00 +0000 (+0100) Subject: qemuBlockStorageSourceDetachPrepare: Prepare for possibly missing 'format' layer X-Git-Tag: v9.10.0-rc1~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=813ccd553be0a4fdc66461ca5a9607d03af1b041;p=thirdparty%2Flibvirt.git qemuBlockStorageSourceDetachPrepare: Prepare for possibly missing 'format' layer Setup the data for detaching of the 'format' layer only when it's present. Restructure the logic to follow the same order as qemuBlockStorageSourceAttachPrepareBlockdev in terms of format/slice/storage -blockdev objects, and drop the now-misleading comment for 'slice' of raw disks. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c index 9d8b3012c7..1eb55315ae 100644 --- a/src/qemu/qemu_block.c +++ b/src/qemu/qemu_block.c @@ -1771,14 +1771,15 @@ qemuBlockStorageSourceDetachPrepare(virStorageSource *src) data = g_new0(qemuBlockStorageSourceAttachData, 1); - data->formatNodeName = qemuBlockStorageSourceGetFormatNodename(src); - data->formatAttached = true; - data->storageNodeName = qemuBlockStorageSourceGetStorageNodename(src); - data->storageAttached = true; + if ((data->formatNodeName = qemuBlockStorageSourceGetFormatNodename(src))) + data->formatAttached = true; if ((data->storageSliceNodeName = qemuBlockStorageSourceGetSliceNodename(src))) data->storageSliceAttached = true; + data->storageNodeName = qemuBlockStorageSourceGetStorageNodename(src); + data->storageAttached = true; + if (src->pr && !virStoragePRDefIsManaged(src->pr)) data->prmgrAlias = g_strdup(src->pr->mgralias);