[libvirt] [PATCH 3/5] libxl: Don't free domain death event
Osier Yang
jyang at redhat.com
Wed Jan 16 04:58:58 UTC 2013
On 2013年01月16日 07:15, Jim Fehlig wrote:
> Callers should not free death events provided by libxl_evdisable_FOO().
> ---
> src/libxl/libxl_driver.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
> index 94a78e2..61ceae1 100644
> --- a/src/libxl/libxl_driver.c
> +++ b/src/libxl/libxl_driver.c
> @@ -270,7 +270,6 @@ libxlDomainObjPrivateAlloc(void)
> return NULL;
>
> libxl_ctx_alloc(&priv->ctx, LIBXL_VERSION, 0, libxl_driver->logger);
> - priv->deathW = NULL;
> libxl_osevent_register_hooks(priv->ctx,&libxl_event_callbacks, priv);
>
> return priv;
> @@ -281,10 +280,8 @@ libxlDomainObjPrivateFree(void *data)
> {
> libxlDomainObjPrivatePtr priv = data;
>
> - if (priv->deathW) {
> + if (priv->deathW)
> libxl_evdisable_domain_death(priv->ctx, priv->deathW);
> - VIR_FREE(priv->deathW);
> - }
>
> libxl_ctx_free(priv->ctx);
> VIR_FREE(priv);
> @@ -604,9 +601,10 @@ libxlCreateDomEvents(virDomainObjPtr vm)
> return 0;
>
> error:
> - if (priv->deathW)
> + if (priv->deathW) {
> libxl_evdisable_domain_death(priv->ctx, priv->deathW);
> - VIR_FREE(priv->deathW);
> + priv->deathW = NULL;
> + }
> return -1;
> }
>
ACK.
More information about the libvir-list
mailing list