[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3 of 4] Extend cpupools to support numa
See previous comments about the interface to libxl_get_topoplogy and leaking the returned pointer value. On Fri, 2010-11-26 at 07:10 +0000, Juergen Gross wrote: > + if (libxl_get_freecpus(&ctx, &freemap)) { > + fprintf(stderr, "libxl_get_freecpus failed\n"); > + return -ERROR_FAIL; > + } > + > + topology = libxl_get_topologyinfo(&ctx); > + if (topology == NULL) { > + fprintf(stderr, "libxl_get_topologyinfo failed\n"); > + return -ERROR_FAIL; > + } > + > + n = 0; > + for (cpu = 0; cpu < topology->nodemap.entries; cpu++) { > + if (libxl_cpumap_test(&freemap, cpu) && > + (topology->nodemap.array[cpu] == node) && > + !libxl_cpupool_cpuadd(&ctx, poolid, cpu)) { > + n++; > + } > + } This sequence of actions look like they would make a useful addition to the libxl interface as a helper function. Not sure what it would be called, perhaps: libxl_cpupool_cpuadd_node(&ctx, poolid, node) ? > + for (p = 0; p < n_pools; p++) { > + if (poolinfo[p].poolid == poolid) { > + for (cpu = 0; cpu < topology->nodemap.entries; cpu++) { > + if ((topology->nodemap.array[cpu] == node) && > + libxl_cpumap_test(&poolinfo[p].cpumap, cpu) && > + !libxl_cpupool_cpuremove(&ctx, poolid, cpu)) { > + n++; > + } > + } > + } > + } also a helper function? libxl_cpupool_cpuremove_node(&ctx, poolid, node) Isn't there an existing function to find a poolinfo from a poolid? (if not then should there be?) Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |