}
if (emitDeviceSyntax) {
- virBufferAsprintf(&opt, ",id=%s%s", QEMU_DRIVE_HOST_PREFIX, disk->info.alias);
+ char *drivealias = qemuAliasFromDisk(disk);
+ if (!drivealias)
+ goto error;
+ virBufferAsprintf(&opt, ",id=%s", drivealias);
+ VIR_FREE(drivealias);
} else {
if (busid == -1 && unitid == -1) {
if (idx != -1)
virBuffer opt = VIR_BUFFER_INITIALIZER;
const char *bus = virDomainDiskQEMUBusTypeToString(disk->bus);
const char *contAlias;
+ char *drivealias;
int controllerModel;
if (qemuCheckDiskConfig(disk) < 0)
goto error;
}
- virBufferAsprintf(&opt, ",drive=%s%s", QEMU_DRIVE_HOST_PREFIX, disk->info.alias);
- virBufferAsprintf(&opt, ",id=%s", disk->info.alias);
+ if (!(drivealias = qemuAliasFromDisk(disk)))
+ goto error;
+ virBufferAsprintf(&opt, ",drive=%s,id=%s", drivealias, disk->info.alias);
+ VIR_FREE(drivealias);
if (bootindex && virQEMUCapsGet(qemuCaps, QEMU_CAPS_BOOTINDEX))
virBufferAsprintf(&opt, ",bootindex=%u", bootindex);
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_BLOCKIO)) {
disk->src->format == VIR_STORAGE_FILE_QED)
size = VIR_ROUND_UP(size, 512);
- if (virAsprintf(&device, "%s%s", QEMU_DRIVE_HOST_PREFIX,
- disk->info.alias) < 0)
+ if (!(device = qemuAliasFromDisk(disk)))
goto endjob;
qemuDomainObjEnterMonitor(driver, vm);
/* build the actual drive id string as the disk->info.alias doesn't
* contain the QEMU_DRIVE_HOST_PREFIX that is passed to qemu */
- if (virAsprintf(&drivestr, "%s%s",
- QEMU_DRIVE_HOST_PREFIX, disk->info.alias) < 0)
+ if (!(drivestr = qemuAliasFromDisk(disk)))
return -1;
/* Let's look for some markers for a secret object and create an alias
continue;
VIR_FREE(diskAlias);
- if (virAsprintf(&diskAlias, "%s%s",
- QEMU_DRIVE_HOST_PREFIX, disk->info.alias) < 0)
+ if (!(diskAlias = qemuAliasFromDisk(disk)))
goto cleanup;
if (qemuDomainObjEnterMonitorAsync(driver, vm,
return 1;
}
- if (virAsprintf(&diskAlias, "%s%s",
- QEMU_DRIVE_HOST_PREFIX, disk->info.alias) < 0)
+ if (!(diskAlias = qemuAliasFromDisk(disk)))
return -1;
if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0)
if (!qemuMigrateDisk(disk, nmigrate_disks, migrate_disks))
continue;
- if ((virAsprintf(&diskAlias, "%s%s",
- QEMU_DRIVE_HOST_PREFIX, disk->info.alias) < 0) ||
+ if (!(diskAlias = qemuAliasFromDisk(disk)) ||
(virAsprintf(&nbd_dest, "nbd:%s:%d:exportname=%s",
hoststr, port, diskAlias) < 0))
goto cleanup;