1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-04-01 20:05:19 +00:00

Only check for cluster fs if we're using a filesystem

otherwise migration fails for e.g. network filesystems like sheepdog
with:

   error: Invalid relative path 'virt-name': Invalid argument

while we should fail with:

    Migration may lead to data corruption if disks use cache != none

References:

    http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=676328
    https://www.redhat.com/archives/libvirt-users/2012-May/msg00088.html
This commit is contained in:
Guido Günther 2012-06-06 20:36:31 +02:00
parent 9d08debe88
commit 3ac8fb54f4

View File

@ -840,10 +840,13 @@ qemuMigrationIsSafe(virDomainDefPtr def)
!disk->readonly &&
disk->cachemode != VIR_DOMAIN_DISK_CACHE_DISABLE) {
int cfs;
if ((cfs = virStorageFileIsClusterFS(disk->src)) == 1)
continue;
else if (cfs < 0)
return false;
if (disk->type == VIR_DOMAIN_DISK_TYPE_FILE) {
if ((cfs = virStorageFileIsClusterFS(disk->src)) == 1)
continue;
else if (cfs < 0)
return false;
}
qemuReportError(VIR_ERR_MIGRATE_UNSAFE, "%s",
_("Migration may lead to data corruption if disks"