[libvirt] [PATCH] xen: Don't crash when we fail to init caps
Guido Günther
agx at sigxcpu.org
Mon Jan 23 11:46:08 UTC 2012
On Mon, Jan 23, 2012 at 10:22:35AM +0000, Daniel P. Berrange wrote:
> On Sun, Jan 22, 2012 at 12:30:20PM +0100, Guido Günther wrote:
> > On Fri, Jan 20, 2012 at 05:01:48PM +0000, Daniel P. Berrange wrote:
> > > On Fri, Jan 20, 2012 at 05:57:34PM +0100, Guido Günther wrote:
> > > > by dereferencing a NULL pointer in the call to
> > > > virNodeSuspendGetTargetMask.
> > > >
> > > > Only warn but Don't set an error to not overwrite an error code set by
> > > > xenHypervisorMakeCapabilities.
> > > > ---
> > > > src/xen/xen_hypervisor.c | 4 ++++
> > > > 1 files changed, 4 insertions(+), 0 deletions(-)
> > > >
> > > > diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c
> > > > index 2bb3466..855576c 100644
> > > > --- a/src/xen/xen_hypervisor.c
> > > > +++ b/src/xen/xen_hypervisor.c
> > > > @@ -2764,6 +2764,10 @@ xenHypervisorMakeCapabilities(virConnectPtr conn)
> > > > utsname.machine,
> > > > cpuinfo,
> > > > capabilities);
> > > > + if (caps == NULL) {
> > > > + VIR_WARN("Failed to get host capabilities");
> > > > + return NULL;
> > > > + }
> > >
> > > Shouldn't be any need for a warning there since the method
> > > we just called should have raised an error
> > The attached version omits the warning. O.k. to apply?
> > Cheers,
> > -- Guido
>
> > From a1f5ee7934c367ed707123c5f720d98c5f93425e Mon Sep 17 00:00:00 2001
> > From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx at sigxcpu.org>
> > Date: Fri, 20 Jan 2012 08:56:39 +0100
> > Subject: [PATCH] xen: Don't crash when we fail to init caps
> >
> > by dereferencing a NULL pointer in the call to
> > virNodeSuspendGetTargetMask.
> > ---
> > src/xen/xen_hypervisor.c | 2 ++
> > 1 files changed, 2 insertions(+), 0 deletions(-)
> >
> > diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c
> > index 5e71967..b5b2328 100644
> > --- a/src/xen/xen_hypervisor.c
> > +++ b/src/xen/xen_hypervisor.c
> > @@ -2764,6 +2764,8 @@ xenHypervisorMakeCapabilities(virConnectPtr conn)
> > utsname.machine,
> > cpuinfo,
> > capabilities);
> > + if (caps == NULL)
> > + return NULL;
> >
> > if (virNodeSuspendGetTargetMask(&caps->host.powerMgmt) < 0)
> > VIR_WARN("Failed to get host power management capabilities");
>
> ACK
Pushed. Thanks.
-- Guido
More information about the libvir-list
mailing list