|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] tools/libxl: Fix free() of wild pointer in libxl__initiate_device_remove()
Ian Jackson writes ("Re: [PATCH] tools/libxl: Fix free() of wild pointer in
libxl__initiate_device_remove()"):
> Andrew Cooper writes ("[PATCH] tools/libxl: Fix free() of wild pointer in
> libxl__initiate_device_remove()"):
> > libxl__initiate_device_remove() had a preexisting error path issue where
> > libxl_dominfo_dispose() could be called on a libxl_dominfo object before it
> > had been initialised with libxl_dominfo_init().
...
> Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> Committed-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
This has been backported to 4.4. It isn't applicable to 4.3 and
earlier.
FYI:
While investigating why it didn't apply, I discovered that the
changeset blamed by Andrew isn't actually the real culprit.
The real culprit IMO is f39b1af257e3 "libxl: remove the Qemu bodge for
driver domain devices" which was by Roger and acked by me. That
change moves libxl_dominfo_init(&info) from the start of the function
to a branch of an if(), but doesn't move the corresponding variable.
Ie it introduced a violation of our principle that variables should
all be initialised to a (noop)-freeable value; that violation was
latent bug.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |