[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