[mpich2-commits] r4160 - in mpich2/trunk/src/pm/hydra: launcher/mpiexec utils/launch

balaji at mcs.anl.gov balaji at mcs.anl.gov
Sun Mar 22 13:09:06 CDT 2009


Author: balaji
Date: 2009-03-22 13:09:06 -0500 (Sun, 22 Mar 2009)
New Revision: 4160

Modified:
   mpich2/trunk/src/pm/hydra/launcher/mpiexec/utils.c
   mpich2/trunk/src/pm/hydra/utils/launch/allocate.c
Log:
Bug fix when a host file is passed.


Modified: mpich2/trunk/src/pm/hydra/launcher/mpiexec/utils.c
===================================================================
--- mpich2/trunk/src/pm/hydra/launcher/mpiexec/utils.c	2009-03-22 09:37:09 UTC (rev 4159)
+++ mpich2/trunk/src/pm/hydra/launcher/mpiexec/utils.c	2009-03-22 18:09:06 UTC (rev 4160)
@@ -46,7 +46,7 @@
     status = HYDU_list_global_env(&handle.global_env);
     HYDU_ERR_POP(status, "unable to get the global env list\n");
 
-    while (++argv) {
+    while (++argv && *argv) {
 
         if (!strcmp(*argv, "-h") || !strcmp(*argv, "-help") || !strcmp(*argv, "--help"))
             HYDU_ERR_SETANDJUMP(status, HYD_INTERNAL_ERROR, "");

Modified: mpich2/trunk/src/pm/hydra/utils/launch/allocate.c
===================================================================
--- mpich2/trunk/src/pm/hydra/utils/launch/allocate.c	2009-03-22 09:37:09 UTC (rev 4159)
+++ mpich2/trunk/src/pm/hydra/utils/launch/allocate.c	2009-03-22 18:09:06 UTC (rev 4160)
@@ -159,9 +159,11 @@
 
     HYDU_FUNC_ENTER();
 
-    if (partition_list == NULL) {
+    if (*partition_list == NULL) {
         HYDU_alloc_partition(partition_list);
         (*partition_list)->segment_list = segment;
+        (*partition_list)->name = MPIU_Strdup(name);
+        (*partition_list)->total_proc_count += segment->proc_count;
     }
     else {
         partition = *partition_list;
@@ -175,11 +177,14 @@
                         s = s->next;
                     s->next = segment;
                 }
+                partition->total_proc_count += segment->proc_count;
                 break;
             }
             else if (partition->next == NULL) {
                 HYDU_alloc_partition(&partition->next);
                 partition->next->segment_list = segment;
+                partition->next->name = MPIU_Strdup(name);
+                partition->next->total_proc_count += segment->proc_count;
                 break;
             }
             else {



More information about the mpich2-commits mailing list