[libvirt] [PATCH] qemu_driver.c: don't unlink(NULL) on OOM error path
Daniel P. Berrange
berrange at redhat.com
Tue Dec 15 15:20:15 UTC 2009
On Mon, Dec 14, 2009 at 04:49:46PM +0100, Jim Meyering wrote:
> Jim Meyering wrote:
>
> > Not terribly likely, but not impossible, either:
> >
> >>From dc8fe76ed209d04b1e962b94b20da17a077e102f Mon Sep 17 00:00:00 2001
> > From: Jim Meyering <meyering at redhat.com>
> > Date: Mon, 14 Dec 2009 16:41:11 +0100
> > Subject: [PATCH] qemu_driver.c: don't unlink(NULL) on OOM error path
> >
> > * src/qemu/qemu_driver.c (qemudDomainMigratePrepareTunnel): Upon an
> > out of memory error, we would end up with unixfile==NULL and attempt
> > to unlink(NULL). Skip the unlink when it's NULL.
> > ---
> > src/qemu/qemu_driver.c | 3 ++-
> > 1 files changed, 2 insertions(+), 1 deletions(-)
> >
> > diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> > index 56bcec5..04b2511 100644
> > --- a/src/qemu/qemu_driver.c
> > +++ b/src/qemu/qemu_driver.c
> > @@ -6903,7 +6903,8 @@ endjob:
> >
> > cleanup:
> > virDomainDefFree(def);
> > - unlink(unixfile);
> > + if (unixfile)
> > + unlink(unixfile);
>
> Oops.
> Should have indented by 4, not 2.
> Adjusted that:
>
> >From d73b657113804a092473a5fa59ad00d105c7dbaa Mon Sep 17 00:00:00 2001
> From: Jim Meyering <meyering at redhat.com>
> Date: Mon, 14 Dec 2009 16:41:11 +0100
> Subject: [PATCH] qemu_driver.c: don't unlink(NULL) on OOM error path
>
> * src/qemu/qemu_driver.c (qemudDomainMigratePrepareTunnel): Upon an
> out of memory error, we would end up with unixfile==NULL and attempt
> to unlink(NULL). Skip the unlink when it's NULL.
> ---
> src/qemu/qemu_driver.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index 56bcec5..c782f0d 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -6903,7 +6903,8 @@ endjob:
>
> cleanup:
> virDomainDefFree(def);
> - unlink(unixfile);
> + if (unixfile)
> + unlink(unixfile);
> VIR_FREE(unixfile);
> if (vm)
> virDomainObjUnlock(vm);
ACK
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list