From: Peter Krempa Date: Thu, 15 Oct 2020 13:27:30 +0000 (+0200) Subject: qemu: hostdev: Prepare definition bits in qemuDomainPrepareHostdev X-Git-Tag: v6.9.0-rc1~72 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=609497876cb7260a0204bfc569cc1400d80f4d4b;p=thirdparty%2Flibvirt.git qemu: hostdev: Prepare definition bits in qemuDomainPrepareHostdev 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 Reviewed-by: Michal Privoznik --- diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index faa64c28b6..d58c76306c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -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; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 5e603284be..ddfdac657a 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -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);