[libvirt] [PATCH 7/7] Don't treat missing topology information as error

Markus Armbruster armbru at redhat.com
Tue Dec 23 15:05:17 UTC 2008


The check for missing topology information fails if and only if the
system doesn't support NUMA.  We reach the check only when
sys_interface_version is high enough for NUMA.  In other words, the
check fails when sys_interface_version incorrectly indicates NUMA
support, and it turns that condition from a recoverable oddity into a
fatal error.

The previous commit enabled NUMA for RHEL-5 regardless of version, and
thus made old versions that don't support NUMA trip this check.

Because the check looks quite worthless to me, I remove it instead of
adding a special case for RHEL.

Signed-off-by: Markus Armbruster <armbru at redhat.com>
---
 src/xend_internal.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/xend_internal.c b/src/xend_internal.c
index 9b9f98d..096e22f 100644
--- a/src/xend_internal.c
+++ b/src/xend_internal.c
@@ -2546,6 +2546,8 @@ sexpr_to_xend_node_info(const struct sexpr *root, virNodeInfoPtr info)
  * Internal routine populating capability info with
  * NUMA node mapping details
  *
+ * Does nothing when the system doesn't support NUMA (not an error).
+ *
  * Returns 0 in case of success, -1 in case of error
  */
 static int
@@ -2562,11 +2564,8 @@ sexpr_to_xend_topology(virConnectPtr conn,
     int numCpus;
 
     nodeToCpu = sexpr_node(root, "node/node_to_cpu");
-    if (nodeToCpu == NULL) {
-        virXendError(conn, VIR_ERR_INTERNAL_ERROR,
-                     "%s", _("failed to parse topology information"));
-        return -1;
-    }
+    if (nodeToCpu == NULL)
+        return 0;               /* no NUMA support */
 
     numCpus = sexpr_int(root, "node/nr_cpus");
 
-- 
1.5.4.3




More information about the libvir-list mailing list