[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] libxl: Add a gc to libxl_get_cpu_topology
# HG changeset patch # User Ian Jackson <ian.jackson@xxxxxxxxxxxxx> # Date 1340905405 -3600 # Node ID 5ad69631f8279b9ce58540dd7e9b316b8607a5a9 # Parent c7f89692edba0c0097243064d4ecda31bfed2fdd libxl: Add a gc to libxl_get_cpu_topology In the next-but-one patch we are going to change the definition of NOGC to require a local variable libxl__gc *gc. libxl_get_cpu_topology doesn't have one but does use NOGC. Fix this by: - introducing an `out' label - replacing the only call to `return' with a suitable assignment to ret and a `goto out'. - adding uses of GC_INIT and GC_FREE. Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Committed-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> --- diff -r c7f89692edba -r 5ad69631f827 tools/libxl/libxl.c --- a/tools/libxl/libxl.c Thu Jun 28 18:43:24 2012 +0100 +++ b/tools/libxl/libxl.c Thu Jun 28 18:43:25 2012 +0100 @@ -3202,6 +3202,7 @@ int libxl_get_physinfo(libxl_ctx *ctx, l libxl_cputopology *libxl_get_cpu_topology(libxl_ctx *ctx, int *nb_cpu_out) { + GC_INIT(ctx); xc_topologyinfo_t tinfo; DECLARE_HYPERCALL_BUFFER(xc_cpu_to_core_t, coremap); DECLARE_HYPERCALL_BUFFER(xc_cpu_to_socket_t, socketmap); @@ -3214,7 +3215,8 @@ libxl_cputopology *libxl_get_cpu_topolog if (max_cpus == 0) { LIBXL__LOG(ctx, XTL_ERROR, "Unable to determine number of CPUS"); - return NULL; + ret = NULL; + goto out; } coremap = xc_hypercall_buffer_alloc @@ -3259,6 +3261,8 @@ fail: if (ret) *nb_cpu_out = max_cpus; + out: + GC_FREE; return ret; } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |