On 03/12/2010 10:10 AM, Luiz Capitulino wrote: > > Hi Chris, > > On Thu, 11 Mar 2010 18:00:56 -0500 > Chris Lalancette <clalance@xxxxxxxxxx> wrote: > >> The nodeGetInfo code was always assuming that machine had a >> single NUMA node, which is not correct. The good news is that >> libnuma gives us this information pretty easily, so let's >> properly report it. >> >> NOTE: With recent hardware starting to support CPU hot-add >> and hot-remove, both this code and the nodeCapsInitNUMA() >> code are quickly going to become obsolete. We'll have to >> think of a more dynamic solution for dealing with NUMA >> nodes and CPUs that can come and go at will. >> >> Signed-off-by: Chris Lalancette <clalance@xxxxxxxxxx> >> --- >> src/nodeinfo.c | 6 +++++- >> 1 files changed, 5 insertions(+), 1 deletions(-) >> >> diff --git a/src/nodeinfo.c b/src/nodeinfo.c >> index 0748602..8d7e055 100644 >> --- a/src/nodeinfo.c >> +++ b/src/nodeinfo.c >> @@ -159,7 +159,11 @@ int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, >> >> nodeinfo->cpus = 0; >> nodeinfo->mhz = 0; >> - nodeinfo->nodes = nodeinfo->cores = 1; >> + nodeinfo->cores = 1; >> + if (numa_available() < 0) >> + nodeinfo->nodes = 1; >> + else >> + nodeinfo->nodes = numa_max_node() + 1; >> >> /* NB: It is impossible to fill our nodes, since cpuinfo >> * has no knowledge of NUMA nodes */ > > This commit breaks the build for me with the following message: > > """ > cc1: warnings being treated as errors > nodeinfo.c: In function 'linuxNodeInfoCPUPopulate': > nodeinfo.c:163: error: implicit declaration of function 'numa_available' > nodeinfo.c:163: error: nested extern declaration of 'numa_available' > nodeinfo.c:166: error: implicit declaration of function 'numa_max_node' > nodeinfo.c:166: error: nested extern declaration of 'numa_max_node' > make[3]: *** [libvirt_driver_la-nodeinfo.lo] Error 1 > make[3]: *** Waiting for unfinished jobs.... > ... > """ > > The code in this file that uses the same functions seems to be protected > by the HAVE_NUMACTL macro. Yeah, you are right. Sorry about that. Followup patch coming. -- Chris Lalancette -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list