]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Improve check for local storage
authorPeter Krempa <pkrempa@redhat.com>
Thu, 11 Sep 2014 17:28:10 +0000 (19:28 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 17 Sep 2014 20:00:08 +0000 (22:00 +0200)
Now that we have a simple function to check locality of storage, reuse
it in qemuDomainCheckDiskPresence().

Also reuse check for empty storage source.

src/qemu/qemu_domain.c

index 2a001c3774e21b1e42fb50b68ddfa063fc6d120b..5859ba7031112bfa5a7c4728307813eeaea73a2d 100644 (file)
@@ -2510,20 +2510,18 @@ qemuDomainCheckDiskPresence(virQEMUDriverPtr driver,
     for (i = vm->def->ndisks; i > 0; i--) {
         size_t idx = i - 1;
         virDomainDiskDefPtr disk = vm->def->disks[idx];
-        const char *path = virDomainDiskGetSource(disk);
         virStorageFileFormat format = virDomainDiskGetFormat(disk);
-        virStorageType type = virStorageSourceGetActualType(disk->src);
 
-        if (!path)
+        if (virStorageSourceIsEmpty(disk->src))
             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 (type != VIR_STORAGE_TYPE_NETWORK &&
+        if (virStorageSourceIsLocalStorage(disk->src) &&
             format >= VIR_STORAGE_FILE_NONE &&
             format < VIR_STORAGE_FILE_BACKING &&
-            virFileExists(path))
+            virFileExists(virDomainDiskGetSource(disk)))
             continue;
 
         if (qemuDomainDetermineDiskChain(driver, vm, disk, false) >= 0 &&