On Thu, May 07, 2015 at 10:20:23AM +0200, Olaf Hering wrote:
On Wed, May 06, Wei Liu wrote:
> On Wed, May 06, 2015 at 10:58:11AM +0200, Olaf Hering wrote:
> > On Wed, May 06, Olaf Hering wrote:
> >
> > > Since libvirtd runs forever there is very little code to undo most
> > > things. But I will see if there is any unload function, did not actively
> > > look for such thing.
> >
> > Looking through libxlStateDriver it seems that libxl and libxlu remains
> > as is. Not sure if thats supposed that way or if perhaps libxl should be
> > fully reinitialized during ->stateReload, and if logfiles should be
> > closed in ->stateCleanup.
> >
>
> FWIW libxl ctx is destroy in libxlDriverConfigDispose. You can probably
> just call xlu_cfg_destroy there.
In libvirt libxlDriverConfigDispose calls both libxl_ctx_free and
xtl_logger_destroy. Both functions check if the input is valid, just
xlu_cfg_destroy dereferences the input unconditionally. Should
xlu_cfg_destroy be changed to do nothing if it gets passed a NULL
pointer?
That is orthogonal to this patch. I don't particularly care if it's
NULL-tolerant or not. In any case, You will need to check validity for
older libxl's xlu_cfg_destroy.
Wei.
Olaf