On Mon, Jun 02, 2014 at 02:15:59PM +0200, Michal Privoznik wrote: > The API gets a NUMA node and find distances to other nodes. The > distances are returned in an array. If an item X within the array > equals to value of zero, then there's no such node as X. > > Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx> > --- > src/libvirt_private.syms | 1 + > src/util/virnuma.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++ > src/util/virnuma.h | 3 +++ > 3 files changed, 54 insertions(+) > > diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms > index cb635cd..6168f76 100644 > --- a/src/libvirt_private.syms > +++ b/src/libvirt_private.syms > @@ -1652,6 +1652,7 @@ virNodeSuspendGetTargetMask; > virDomainNumatuneMemModeTypeFromString; > virDomainNumatuneMemModeTypeToString; > virNumaGetAutoPlacementAdvice; > +virNumaGetDistances; > virNumaGetMaxNode; > virNumaGetNodeMemory; > virNumaIsAvailable; > diff --git a/src/util/virnuma.c b/src/util/virnuma.c > index 1e099eb..68b2698 100644 > --- a/src/util/virnuma.c > +++ b/src/util/virnuma.c > @@ -217,6 +217,56 @@ virNumaGetMaxNode(void) > > > /** > + * virNumaGetDistances: > + * @node: identifier of the requested NUMA node > + * @distances: array of distances to sibling nodes > + * @ndistances: size of @distances > + * > + * Get array of distances to sibling nodes from @node. If a > + * distances[x] equals to zero, the node x is not enabled or > + * doesn't exist. As a special case, if @node itself refers to > + * disabled or nonexistent NUMA node, then @distances and > + * @ndistances are set to NULL and zero respectively. I think it'd be worth stating what the distance is between a node and itself, since that's another special case. I'd assumed that the distince between a ndoe and itself would be zero, but your next patch shows that it would be 10 which I find a bit bizarre. Presumably that's just what numactl, or perhaps the kernel, reports ? If we are relying on numactl's value ranges, then we should be clear about this to help people porting to non-Linux platforms. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list