qemu_hotplug: Check for duplicate drive addresses

This tries to fix the same problem as f1d6585300 but it's doing
so in a less invasive way.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Tested-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
This commit is contained in:
Michal Privoznik 2019-04-11 15:45:27 +02:00
parent ee2c5ef39f
commit ddc72f9902

View File

@ -1183,6 +1183,12 @@ qemuDomainAttachSCSIDisk(virQEMUDriverPtr driver,
return -1;
}
if (virDomainSCSIDriveAddressIsUsed(vm->def, &disk->info.addr.drive)) {
virReportError(VIR_ERR_OPERATION_INVALID, "%s",
_("Domain already contains a disk with that address"));
return -1;
}
/* Let's make sure the disk has a controller defined and loaded before
* trying to add it. The controller used by the disk must exist before a
* qemu command line string is generated.