[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] libxl: use xc_topologyinfo to figure out how many CPUs we actually have
On Wed, 2012-05-09 at 13:04 +0100, Ian Campbell wrote: > On Wed, 2012-05-09 at 12:03 +0100, Darrio Faggioli wrote: > > diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c > > --- a/tools/libxl/libxl.c > > +++ b/tools/libxl/libxl.c > > @@ -2903,7 +2903,8 @@ libxl_cputopology *libxl_get_cpu_topolog > > } > > > > for (i = 0; i < max_cpus; i++) { > > -#define V(map, i) (map[i] == INVALID_TOPOLOGY_ID) ? \ > > +#define V(map, i) (i > tinfo.max_cpu_index || \ > > + map[i] == INVALID_TOPOLOGY_ID) ? \ > > This ensures that cpus entries above max_cpu_index are > INVALID_TOPOLOGY_ID > Yep, thus giving consumers of this call the chance to figure out what the valid entries are. It looked the most natural way of doing this, given output_topology (for instance) already check for LIBXL_CPUTOPOLOGY_INVALID_ENTRY entries and skip them. Also, the get-cpu-topology command in xenpm, which always worked properly on my testbox, does exactly that. > but do you also want to size the return array using > tinfo.max_cpu_index too? And also return that in *nr instead of? > > (I don't know the answer, either of max-possible- and max-online-cpus is > a reasonable size for this array) > Well, I really don't know either. This is the minimum impact working version. For sure, I'd like very much to return that value via *nr, as it will give me something more sensible to work with... You know what, I'm sending a patch doing exactly that, as I think what you're suggesting is actually better. Thanks, Dario -- <<This happens because I choose it to happen!>> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://retis.sssup.it/people/faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) Attachment:
signature.asc _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |