Re: [PATCH] qemu: clean up migration ports when migration cancelled

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It's ok. I applied the original patch and I didn't notice it too. No body is perfect. Fortunately, we found and fixed it immediately. I'll be much more careful next time.

Thanks a lot.

> -----Original Message-----
> From: Jiri Denemark [mailto:jdenemar@xxxxxxxxxx]
> Sent: Wednesday, November 06, 2013 10:09 PM
> To: Wangyufei (A)
> Cc: libvir-list@xxxxxxxxxx; Zengjunliang; Wangrui (K)
> Subject: Re:  [PATCH] qemu: clean up migration ports when migration
> cancelled
> 
> On Wed, Nov 06, 2013 at 04:17:05 +0000, Wangyufei (A) wrote:
> > >From bfb2dafa8ea183781446c7cbe0376e1a2d41a5ae Mon Sep 17
> 00:00:00 2001
> > From: Zeng Junliang <zengjunliang@xxxxxxxxxx>
> > Date: Wed, 6 Nov 2013 11:36:57 +0800
> > Subject: [PATCH] qemu: clean up migration ports when migration cancelled
> >
> > If there's a migration cancelled, the bitmap of migration port should be
> cleaned up too.
> >
> > Signed-off-by: Zeng Junliang <zengjunliang@xxxxxxxxxx>
> > ---
> >  src/qemu/qemu_migration.c |    7 +++++--
> >  1 files changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> > index 4f35a7a..594d1cd 100644
> > --- a/src/qemu/qemu_migration.c
> > +++ b/src/qemu/qemu_migration.c
> > @@ -4387,12 +4387,16 @@ qemuMigrationFinish(virQEMUDriverPtr
> driver,
> >      qemuDomainObjPrivatePtr priv = vm->privateData;
> >      virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
> >      virCapsPtr caps = NULL;
> > +    unsigned short port = 0;
> 
> No need to initialize port here.
> 
> >
> >      VIR_DEBUG("driver=%p, dconn=%p, vm=%p, cookiein=%s,
> cookieinlen=%d, "
> >                "cookieout=%p, cookieoutlen=%p, flags=%lx,
> retcode=%d",
> >                driver, dconn, vm, NULLSTR(cookiein), cookieinlen,
> >                cookieout, cookieoutlen, flags, retcode);
> >
> > +    port = priv->migrationPort;
> > +    priv->migrationPort = 0;
> > +
> >      if (!(caps = virQEMUDriverGetCapabilities(driver, false)))
> >          goto cleanup;
> >
> > @@ -4439,8 +4443,6 @@ qemuMigrationFinish(virQEMUDriverPtr driver,
> >          }
> >
> >          qemuMigrationStopNBDServer(driver, vm, mig);
> > -        virPortAllocatorRelease(driver->migrationPorts,
> priv->migrationPort);
> > -        priv->migrationPort = 0;
> >
> >          if (flags & VIR_MIGRATE_PERSIST_DEST) {
> >              virDomainDefPtr vmdef;
> > @@ -4573,6 +4575,7 @@ endjob:
> >      }
> >
> >  cleanup:
> > +    virPortAllocatorRelease(driver->migrationPorts, port);
> >      if (vm) {
> >          VIR_FREE(priv->origname);
> >          virObjectUnlock(vm);
> 
> ACK and pushed. My bad for not spotting thins while reviewing the
> original patch.
> 
> Jirka

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]