On 09/05/14 00:26, John Ferlan wrote:
If the virNumaGetNodeCPUs() call fails with -1, then jumping to
cleanup
with 'cpus == NULL' and calling virCapabilitiesClearHostNUMACellCPUTopology
will cause issues.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
src/nodeinfo.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/nodeinfo.c b/src/nodeinfo.c
index 92a3718..2008ade 100644
--- a/src/nodeinfo.c
+++ b/src/nodeinfo.c
@@ -1933,7 +1933,7 @@ nodeCapsInitNUMA(virCapsPtr caps)
ret = 0;
cleanup:
- if (topology_failed || ret < 0)
+ if ((topology_failed || ret < 0) && cpus)
virCapabilitiesClearHostNUMACellCPUTopology(cpus, ncpus);
False positive. This function checks for NULL.
virBitmapFree(cpumap);
Also the cleanup section frees "cpus" twice. That might be worth fixing too.
ACK
Peter