From aa826860bc9051f90f3fc8b529029225c6b2bab8 Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Mon, 8 Oct 2007 15:02:47 +0000 Subject: [PATCH] * src/xend_internal.c: applied patch from Beth Kon to fix NUMA topology for cells without CPUs Daniel --- ChangeLog | 5 +++++ src/xend_internal.c | 14 +++++++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index fcdc1cf257..9445fff857 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Oct 8 17:01:53 CEST 2007 Daniel Veillard + + * src/xend_internal.c: applied patch from Beth Kon to fix + NUMA topology for cells without CPUs + Thu Oct 4 21:05:59 EST 2007 Daniel P. Berrange * src/xend_internal.c: Fix error handling for NUMA topology diff --git a/src/xend_internal.c b/src/xend_internal.c index 47feb2e465..793581f47d 100644 --- a/src/xend_internal.c +++ b/src/xend_internal.c @@ -1988,9 +1988,15 @@ sexpr_to_xend_topology_xml(virConnectPtr conn, struct sexpr *root, virBufferPtr offset++; /* get list of cpus associated w/ single cell */ while (1) { - if ((len = getNumber(offset, &cpuNum)) < 0) { - virXendError(conn, VIR_ERR_XEN_CALL, " topology string syntax error"); - goto error; + len = getNumber(offset, &cpuNum); + if (len < 0) { + if (!strncmp (offset, "no cpus", 7)){ + *(cpuIdsPtr++) = -1; + break; + } else { + virXendError(conn, VIR_ERR_XEN_CALL, "topology string syntax error"); + goto error; + } } offset += len; next = *(offset); @@ -2058,6 +2064,8 @@ sexpr_to_xend_topology_xml(virConnectPtr conn, struct sexpr *root, virBufferPtr if (r == -1) goto vir_buffer_failed; for (i = 0; i < cellCpuCount; i++) { + if (*(iCpuIdsPtr + i) == -1) + break; r = virBufferVSprintf (xml, "\ \n", *(iCpuIdsPtr + i)); if (r == -1) goto vir_buffer_failed; -- GitLab