On 04/11/2013 07:09 AM, Ian Campbell wrote:
On Thu, 2013-04-11 at 13:46 +0100, Ian Campbell wrote:
> Hi Jim,
>
> I don't see any calls to libxl_event_dispose in libvirt.git,
actually I think I meant libxl_event_free, but I can't see that either.
Right. I confirmed that was needed with Ian J. a few weeks (months) back, but
then never submitted a patch. I've attached one, but noticed that the prototype
of the event_occurs callback defines the event parameter as const, causing this
error without the lame cast
cc1: warnings being treated as errors
libxl/libxl_driver.c: In function 'libxlEventHandler':
libxl/libxl_driver.c:760: error: passing argument 2 of 'libxl_event_free'
discards qualifiers from pointer target type
Shouldn't the callback in libxl_event.h just be
void (*event_occurs)(void *user, libxl_event *event);
But I suppose we can't change that. BTW, the const'ness of event led me to
believe it didn't need freed.
Regards,
Jim
> libxl_event.h says in relation to the event_occurs callback:
> * event becomes owned by the application and must be freed, either
> * by event_occurs or later.
> so does this mean the memory referenced by event is leaked by
> libxlEventHandler?
>
> libxl_event only contains dynamic allocations for
> LIBXL_EVENT_TYPE_DISK_EJECT which you don't seem to register for so the
> issue is probably benign but worth noting I think.
>
> Ian.
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel(a)lists.xen.org
>
http://lists.xen.org/xen-devel