]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: hostdev: Prepare definition bits in qemuDomainPrepareHostdev
authorPeter Krempa <pkrempa@redhat.com>
Thu, 15 Oct 2020 13:27:30 +0000 (15:27 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Tue, 20 Oct 2020 13:08:22 +0000 (15:08 +0200)
qemuBuildHostdevSCSIAttachPrepare is supposed to prepare the data
structure used for attaching the hostdev not preparing the hostdev
definition itself. Move the corresponding bits to qemuDomainPrepareHostdev

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/qemu/qemu_command.c
src/qemu/qemu_domain.c

index faa64c28b6d15fa2ed96ea2cbefbbf874cf3310a..d58c76306cdcbd8d486b1247f50406718c2deb0c 100644 (file)
@@ -4992,7 +4992,6 @@ qemuBuildHostdevSCSIAttachPrepare(virDomainHostdevDefPtr hostdev,
 
             src = scsisrc->u.host.src;
 
-            src->type = VIR_STORAGE_TYPE_BLOCK;
             src->path = g_strdup_printf("/dev/%s", devstr);
 
             break;
@@ -5007,7 +5006,6 @@ qemuBuildHostdevSCSIAttachPrepare(virDomainHostdevDefPtr hostdev,
             return NULL;
         }
 
-        src->readonly = hostdev->readonly;
         ret->storageNodeName = src->nodestorage;
         *backendAlias = src->nodestorage;
 
index 5e603284be8fe38822d636498a79a2d56ab973a5..ddfdac657a406403b5bde2cc039dceed83b0ec63 100644 (file)
@@ -10408,6 +10408,9 @@ qemuDomainPrepareHostdev(virDomainHostdevDefPtr hostdev,
             virObjectUnref(scsisrc->u.host.src);
             scsisrc->u.host.src = virStorageSourceNew();
             src = scsisrc->u.host.src;
+
+            src->type = VIR_STORAGE_TYPE_BLOCK;
+
             break;
 
         case VIR_DOMAIN_HOSTDEV_SCSI_PROTOCOL_TYPE_ISCSI:
@@ -10423,6 +10426,8 @@ qemuDomainPrepareHostdev(virDomainHostdevDefPtr hostdev,
         if (src) {
             const char *backendalias = hostdev->info->alias;
 
+            src->readonly = hostdev->readonly;
+
             if (virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV_HOSTDEV_SCSI)) {
                 src->id = qemuDomainStorageIdNew(priv);
                 src->nodestorage = g_strdup_printf("libvirt-%d-backend", src->id);