On 04/24/2014 07:41 AM, Martin Kletzander wrote: > Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1019926 > Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=868673 > > Signed-off-by: Martin Kletzander <[email protected]> > --- >
> +++ b/src/qemu/qemu_domain.c
> @@ -2268,8 +2268,18 @@ qemuDomainCheckDiskPresence(virQEMUDriverPtr driver,
> VIR_DEBUG("Checking for disk presence");
> for (i = vm->def->ndisks; i > 0; i--) {
> disk = vm->def->disks[i - 1];
> + const char *path = virDomainDiskGetSource(disk);
> + enum virStorageFileFormat format = virDomainDiskGetFormat(disk);
>
> - if (!virDomainDiskGetSource(disk))
> + if (!path)
> + continue;
> +
> + /* There is no need to check the backing chain for disks
> + * without backing support, the fact that the file exists is
> + * more than enough */
> + if (format >= VIR_STORAGE_FILE_NONE &&
> + format < VIR_STORAGE_FILE_BACKING &&
> + virFileExists(path))
Peter may have to further tweak this with his work on gluster patches
(we should not be calling virFileExists() if virStorageIsFile(path)
returns fals); but for now this is a strict improvement.
ACK.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
