diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 66ed1383c2..238c6ed620 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -9719,18 +9719,6 @@ qemuBuildCommandLineValidate(virQEMUDriverPtr driver, return -1; } - for (i = 0; i < def->ndisks; i++) { - virDomainDiskDefPtr disk = def->disks[i]; - - if (disk->src->driverName != NULL && - STRNEQ(disk->src->driverName, "qemu")) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unsupported driver name '%s' for disk '%s'"), - disk->src->driverName, disk->src->path); - return -1; - } - } - return 0; } diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 672f08b442..21897cb47a 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -4142,6 +4142,7 @@ static int qemuDomainDeviceDefValidateDisk(const virDomainDiskDef *disk, virQEMUCapsPtr qemuCaps) { + const char *driverName = virDomainDiskGetDriver(disk); virStorageSourcePtr n; if (disk->src->shared && !disk->src->readonly) { @@ -4160,6 +4161,13 @@ qemuDomainDeviceDefValidateDisk(const virDomainDiskDef *disk, } } + if (driverName && STRNEQ(driverName, "qemu")) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + _("unsupported driver name '%s' for disk '%s'"), + driverName, disk->dst); + return -1; + } + for (n = disk->src; virStorageSourceIsBacking(n); n = n->backingStore) { if (qemuDomainValidateStorageSource(n, qemuCaps) < 0) return -1; diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 8d3191f971..df9e8aa716 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -699,13 +699,6 @@ qemuDomainAttachDeviceDiskLive(virQEMUDriverPtr driver, virDomainDiskDefPtr orig_disk = NULL; int ret = -1; - if (STRNEQ_NULLABLE(virDomainDiskGetDriver(disk), "qemu")) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unsupported driver name '%s' for disk '%s'"), - virDomainDiskGetDriver(disk), disk->dst); - goto cleanup; - } - if (virDomainDiskTranslateSourcePool(disk) < 0) goto cleanup;