[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH for-4.6 02/13] libxl: properly clean up array in libxl_list_cpupool failure path
On Thu, 2015-07-23 at 08:59 +0100, Wei Liu wrote: > Document how cpupool_info works. Distinguish success (ERROR_FAIL + > ENOENT) vs failure in libxl_list_cpupool and properly clean up the > array > in failure path. > > Also switch to libxl__realloc and call libxl_cpupool_{init,dispose} > where appropriate. > > There is change of behaviour. Previously if memory allocation fails > the > said function returns NULL. Now memory allocation failure is fatal. > This > is in line with how we deal with memory allocation failure in other > places in libxl though. I think this function would benefit from making the out: label be the error path and the success case just a return ptr (just before the label). Then your error handling for cpupool_info would become libxl_cpupoolinfo_dispose(&info); if (errno != ENOENT) goto out; break; and the "if (failed)" block would be at the out label (without the iff). Such splitting of the success/failure case is allowed if the only shared code would be the GC_FREE, which is the case here. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |