Michael Raymond, le Thu 19 Nov 2009 14:33:49 -0600, a écrit :
> --- hwloc-0.9.2/src/topology-linux.c  2009-11-03 16:40:31.000000000 -0600
> +++ hwloc-new//src/topology-linux.c   2009-11-19 14:20:43.630035434 -0600
> @@ -536,6 +536,10 @@
>    struct dirent *dirent;
>    hwloc_obj_t node;
> 
> +  if (topology->ignored_types[HWLOC_OBJ_NODE] ==
> HWLOC_IGNORE_TYPE_ALWAYS) {
> +       return;
> +  }
> +
>    dir = hwloc_opendir(path, topology->backend_params.sysfs.root_fd);
>    if (dir)
>      {

Mmm, indeed.  And it will happen on other OSes where we get the
distances too, e.g. Solaris.  Does the attached more generic patch
properly fixes it too?

>   Also I'm concerned about the value of CPUSET_MASK_LEN in
> hwloc_admin_disable_set_from_cpuset().  It's only 64 characters but our
> Linux boxes can have to 2048 processors.  I don't think there's any harm
> in bumping that up a little.

Mmm, even better, we can avoid using a constant size completely, I've
commited a fix.

Samuel
Index: src/topology.c
===================================================================
--- src/topology.c      (révision 1364)
+++ src/topology.c      (copie de travail)
@@ -298,6 +298,9 @@
   if (getenv("HWLOC_IGNORE_DISTANCES"))
     return;

+  if (topology->ignored_types[HWLOC_OBJ_NODE] == HWLOC_IGNORE_TYPE_ALWAYS)
+    return;
+
 #ifdef HWLOC_DEBUG
   hwloc_debug("node distance matrix:\n");
   hwloc_debug("   ");

Reply via email to