[libvirt] [PATCH] Only check for cluster fs if we're using a filesystem
Guido Günther
agx at sigxcpu.org
Fri Jun 8 18:28:27 UTC 2012
On Fri, Jun 08, 2012 at 03:34:41PM +0100, Daniel P. Berrange wrote:
> On Fri, Jun 08, 2012 at 02:19:08PM +0200, Guido Günther wrote:
> > 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
> > ---
> > src/qemu/qemu_migration.c | 11 +++++++----
> > 1 file changed, 7 insertions(+), 4 deletions(-)
> >
> > diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> > index b58380b..a1fb962 100644
> > --- a/src/qemu/qemu_migration.c
> > +++ b/src/qemu/qemu_migration.c
> > @@ -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;
> > + }
>
> ACK
Pushed. Thanks,
-- Guido
More information about the libvir-list
mailing list