[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2-184-g60ca21c

Service Account noreply at mpich.org
Mon Feb 15 12:57:49 CST 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".

The branch, master has been updated
       via  60ca21cf73d3cd3d74d36ac4bae50f37d904dfc9 (commit)
       via  7fddec5638fff514e808cb9dff7ad6b424b8596c (commit)
       via  c9254112baaf7d6cd5697fcb6101d90ff6f227c5 (commit)
       via  fb99a5964796bad5b2abd67281dac2863f275404 (commit)
       via  d3d0ae55ec02f80a78c3cf0a739549c0313fcd90 (commit)
       via  927f18ea9a0fb24e0812ae8776d191162f5474a5 (commit)
      from  62f750cca300118d22a4ba2d77968343b0acfd53 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/60ca21cf73d3cd3d74d36ac4bae50f37d904dfc9

commit 60ca21cf73d3cd3d74d36ac4bae50f37d904dfc9
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 20:10:08 2016 -0600

    Bug-fix: release RMA progress hook correctly.
    
    We should check for both active and inactive lists.  This was a
    bug causing the RMA progress hook to get released even when one of the
    lists was not NULL.
    
    Signed-off-by: Xin Zhao <xinzhao3 at illinois.edu>

diff --git a/src/mpid/ch3/src/mpidi_rma.c b/src/mpid/ch3/src/mpidi_rma.c
index 53cf8c7..590f30a 100644
--- a/src/mpid/ch3/src/mpidi_rma.c
+++ b/src/mpid/ch3/src/mpidi_rma.c
@@ -193,7 +193,7 @@ int MPID_Win_free(MPID_Win ** win_ptr)
     MPIU_Assert((*win_ptr)->active == FALSE);
     MPL_DL_DELETE(MPIDI_RMA_Win_inactive_list_head, (*win_ptr));
 
-    if (MPIDI_RMA_Win_inactive_list_head == NULL && MPIDI_RMA_Win_inactive_list_head == NULL) {
+    if (MPIDI_RMA_Win_inactive_list_head == NULL && MPIDI_RMA_Win_active_list_head == NULL) {
         /* this is the last window, de-register RMA progress hook */
         mpi_errno = MPID_Progress_deregister_hook(MPIDI_CH3I_RMA_Progress_hook_id);
         if (mpi_errno != MPI_SUCCESS) {

http://git.mpich.org/mpich.git/commitdiff/7fddec5638fff514e808cb9dff7ad6b424b8596c

commit 7fddec5638fff514e808cb9dff7ad6b424b8596c
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 17:21:05 2016 -0600

    fix initializations.
    
    In some cases, we would end up using the uninitialized variables.
    Initialize at the start to avoid such cases.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/src/pm/hydra/tools/bootstrap/src/bsci_init.c.in b/src/pm/hydra/tools/bootstrap/src/bsci_init.c.in
index ae4df63..d48a548 100644
--- a/src/pm/hydra/tools/bootstrap/src/bsci_init.c.in
+++ b/src/pm/hydra/tools/bootstrap/src/bsci_init.c.in
@@ -45,7 +45,7 @@ static void init_bsci_info(void)
 
 static const char *detect_rmk(int debug)
 {
-    int i, ret;
+    int i, ret = 0;
     HYD_status status = HYD_SUCCESS;
 
     for (i = 0; rmk_array[i]; i++) {
diff --git a/src/pm/hydra/utils/args/args.c b/src/pm/hydra/utils/args/args.c
index 8303bd7..bc7ea5e 100644
--- a/src/pm/hydra/utils/args/args.c
+++ b/src/pm/hydra/utils/args/args.c
@@ -360,7 +360,7 @@ HYD_status HYDU_parse_hostfile(const char *hostfile, struct HYD_node **node_list
 
 char *HYDU_find_full_path(const char *execname)
 {
-    char *tmp[HYD_NUM_TMP_STRINGS], *path = NULL, *test_path = NULL;
+    char *tmp[HYD_NUM_TMP_STRINGS] = { NULL }, *path = NULL, *test_path = NULL;
     HYD_status status = HYD_SUCCESS;
 
     HYDU_FUNC_ENTER();

http://git.mpich.org/mpich.git/commitdiff/c9254112baaf7d6cd5697fcb6101d90ff6f227c5

commit c9254112baaf7d6cd5697fcb6101d90ff6f227c5
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 17:12:12 2016 -0600

    Added additional error checking.
    
    We were capturing the error, but were not doing anything with the
    captured error code.  This patch at least jumps to fail in such cases
    and returns the error instead of simply overwriting the error in the
    next statement.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/src/mpi/coll/red_scat.c b/src/mpi/coll/red_scat.c
index 5eb3595..9e26f0d 100644
--- a/src/mpi/coll/red_scat.c
+++ b/src/mpi/coll/red_scat.c
@@ -835,10 +835,13 @@ int MPIR_Reduce_scatter_intra(const void *sendbuf, void *recvbuf, const int recv
 			    mpi_errno = MPIR_Reduce_local_impl( 
                                tmp_recvbuf, tmp_results, blklens[0],
 			       datatype, op); 
+                            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
 			    mpi_errno = MPIR_Reduce_local_impl( 
                                ((char *)tmp_recvbuf + dis[1]*extent),
 			       ((char *)tmp_results + dis[1]*extent),
 			       blklens[1], datatype, op); 
+                            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
                         }
                     }
                     else {
@@ -846,10 +849,13 @@ int MPIR_Reduce_scatter_intra(const void *sendbuf, void *recvbuf, const int recv
 			    mpi_errno = MPIR_Reduce_local_impl(
                                    tmp_results, tmp_recvbuf, blklens[0],
                                    datatype, op); 
+                            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
 			    mpi_errno = MPIR_Reduce_local_impl(
                                    ((char *)tmp_results + dis[1]*extent),
                                    ((char *)tmp_recvbuf + dis[1]*extent),
                                    blklens[1], datatype, op); 
+                            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
                         }
                         /* copy result back into tmp_results */
                         mpi_errno = MPIR_Localcopy(tmp_recvbuf, 1, recvtype, 
diff --git a/src/mpi/coll/red_scat_block.c b/src/mpi/coll/red_scat_block.c
index 28c6b17..1ca4b8e 100644
--- a/src/mpi/coll/red_scat_block.c
+++ b/src/mpi/coll/red_scat_block.c
@@ -809,19 +809,26 @@ int MPIR_Reduce_scatter_block_intra (
                         mpi_errno = MPIR_Reduce_local_impl(
                                           tmp_recvbuf, tmp_results, blklens[0],
                                           datatype, op); 
+                        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
                         mpi_errno = MPIR_Reduce_local_impl( 
                                           ((char *)tmp_recvbuf + dis[1]*extent),
                                           ((char *)tmp_results + dis[1]*extent),
                                           blklens[1], datatype, op); 
+                        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
                     }
                     else {
                         mpi_errno = MPIR_Reduce_local_impl( 
                                         tmp_results, tmp_recvbuf, blklens[0],
                                         datatype, op); 
+                        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
                         mpi_errno = MPIR_Reduce_local_impl( 
                                         ((char *)tmp_results + dis[1]*extent),
                                         ((char *)tmp_recvbuf + dis[1]*extent),
                                         blklens[1], datatype, op); 
+                        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
                         /* copy result back into tmp_results */
                         mpi_errno = MPIR_Localcopy(tmp_recvbuf, 1, recvtype, 
                                                    tmp_results, 1, recvtype);
diff --git a/src/mpid/ch3/src/ch3u_port.c b/src/mpid/ch3/src/ch3u_port.c
index 6ff7cc5..d1f966b 100644
--- a/src/mpid/ch3/src/ch3u_port.c
+++ b/src/mpid/ch3/src/ch3u_port.c
@@ -1024,8 +1024,10 @@ int MPIDI_Comm_accept(const char *port_name, MPID_Info *info, int root,
 	   distributes them to the processes in comm_ptr */
 	mpi_errno = ReceivePGAndDistribute( tmp_comm, comm_ptr, root, &recvtag,
 					n_remote_pgs, remote_pg );
+        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 	
 	mpi_errno = SendPGtoPeerAndFree( tmp_comm, &sendtag, pg_list );
+        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
 	/* Receive the translations from remote process rank to process group index */
 	/*printf("accept:sending %d ints and receiving %d ints\n", local_comm_size * 2, remote_comm_size * 2);fflush(stdout);*/
@@ -1034,6 +1036,8 @@ int MPIDI_Comm_accept(const char *port_name, MPID_Info *info, int root,
 				  remote_translation, remote_comm_size * 2, 
 				  MPI_INT, 0, recvtag++, tmp_comm,
 				  MPI_STATUS_IGNORE, &errflag);
+        if (mpi_errno) MPIR_ERR_POP(mpi_errno);
+
 #ifdef MPICH_DBG_OUTPUT
 	MPL_DBG_MSG_D(MPIDI_CH3_DBG_OTHER,TERSE,"[%d]accept:Received remote_translation:\n", rank);
 	for (i=0; i<remote_comm_size; i++)
diff --git a/src/pm/hydra/pm/pmiserv/pmip_cb.c b/src/pm/hydra/pm/pmiserv/pmip_cb.c
index 316c01c..7fe88f0 100644
--- a/src/pm/hydra/pm/pmiserv/pmip_cb.c
+++ b/src/pm/hydra/pm/pmiserv/pmip_cb.c
@@ -549,6 +549,8 @@ static HYD_status launch_procs(void)
                                       HYD_pmcd_pmip.downstream.err,
                                       HYD_pmcd_pmip.downstream.pid,
                                       HYD_pmcd_pmip.local.ckpoint_prefix_list[0]);
+        HYDU_ERR_POP(status, "unable to restart from checkpoint\n");
+
         goto fn_spawn_complete;
     }
 
diff --git a/src/pm/hydra/ui/utils/uiu.c b/src/pm/hydra/ui/utils/uiu.c
index 4b89134..f935442 100644
--- a/src/pm/hydra/ui/utils/uiu.c
+++ b/src/pm/hydra/ui/utils/uiu.c
@@ -320,6 +320,7 @@ static HYD_status stdoe_cb(int _fd, int pgid, int proxy_id, int rank, void *_buf
                     status = HYDU_sock_write(fd, (const void *) prepend,
                                              strlen(prepend), &sent, &closed,
                                              HYDU_SOCK_COMM_MSGWAIT);
+                    HYDU_ERR_POP(status, "unable to write data to stdout/stderr\n");
                 }
                 status = HYDU_sock_write(fd, (const void *) &buf[mark], i - mark + 1,
                                          &sent, &closed, HYDU_SOCK_COMM_MSGWAIT);
diff --git a/src/pmi/simple/simple_pmi.c b/src/pmi/simple/simple_pmi.c
index 33ea5db..05859f4 100644
--- a/src/pmi/simple/simple_pmi.c
+++ b/src/pmi/simple/simple_pmi.c
@@ -603,6 +603,8 @@ int PMI_Spawn_multiple(int count,
 		}
                 argcnt++;
 		rc = PMIU_writeline( PMI_fd, buf );
+                if (rc)
+                    return PMI_FAIL;
 		buf[0] = 0;
 
             }

http://git.mpich.org/mpich.git/commitdiff/fb99a5964796bad5b2abd67281dac2863f275404

commit fb99a5964796bad5b2abd67281dac2863f275404
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 17:07:15 2016 -0600

    remove unnecessary statement.
    
    The variable is immediately overwritten in the next statement, making
    this statement irrelevant.
    
    Signed-off-by: Ken Raffenetti <raffenet at mcs.anl.gov>

diff --git a/src/mpi/coll/ired_scat_block.c b/src/mpi/coll/ired_scat_block.c
index 6960ed0..05d4367 100644
--- a/src/mpi/coll/ired_scat_block.c
+++ b/src/mpi/coll/ired_scat_block.c
@@ -497,7 +497,6 @@ int MPIR_Ireduce_scatter_block_rec_dbl(const void *sendbuf, void *recvbuf, int r
             blklens[1] = 0;
 
         dis[0] = 0;
-        dis[1] = blklens[0];
         dis[1] = blklens[0] + recvcount * (MPL_MIN((dst_tree_root + mask), comm_size) - dst_tree_root);
 
         mpi_errno = MPIR_Type_indexed_impl(2, blklens, dis, datatype, &recvtype);

http://git.mpich.org/mpich.git/commitdiff/d3d0ae55ec02f80a78c3cf0a739549c0313fcd90

commit d3d0ae55ec02f80a78c3cf0a739549c0313fcd90
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 17:00:40 2016 -0600

    romio: fixup weird pointer comparison.
    
    What does a '< 0' comparison even mean for a pointer.  Looks like some
    weird unexplained logic.  Changing it to a simple NULL comparison.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpi/romio/mpi-io/glue/default/mpio_file.c b/src/mpi/romio/mpi-io/glue/default/mpio_file.c
index 7a43b01..38222f7 100644
--- a/src/mpi/romio/mpi-io/glue/default/mpio_file.c
+++ b/src/mpi/romio/mpi-io/glue/default/mpio_file.c
@@ -66,7 +66,7 @@ MPI_Fint MPIO_File_c2f(MPI_File fh)
 #else
     int i;
 
-    if ((fh <= (MPI_File) 0) || (fh->cookie != ADIOI_FILE_COOKIE))
+    if ((fh == NULL) || (fh->cookie != ADIOI_FILE_COOKIE))
 	return (MPI_Fint) 0;
     if (!ADIOI_Ftable) {
 	ADIOI_Ftable_max = 1024;
diff --git a/src/mpi/romio/mpi-io/glue/mpich/mpio_file.c b/src/mpi/romio/mpi-io/glue/mpich/mpio_file.c
index 6f6c902..a5e54a7 100644
--- a/src/mpi/romio/mpi-io/glue/mpich/mpio_file.c
+++ b/src/mpi/romio/mpi-io/glue/mpich/mpio_file.c
@@ -63,7 +63,7 @@ MPI_Fint MPIO_File_c2f(MPI_File fh)
 #else
     int i;
 
-    if ((fh <= (MPI_File) 0) || (fh->cookie != ADIOI_FILE_COOKIE))
+    if ((fh == NULL) || (fh->cookie != ADIOI_FILE_COOKIE))
 	return (MPI_Fint) 0;
 
     if (fh->fortran_handle != -1)
diff --git a/src/mpi/romio/mpi-io/glue/openmpi/mpio_file.c b/src/mpi/romio/mpi-io/glue/openmpi/mpio_file.c
index e3ac2e7..f0b6d51 100644
--- a/src/mpi/romio/mpi-io/glue/openmpi/mpio_file.c
+++ b/src/mpi/romio/mpi-io/glue/openmpi/mpio_file.c
@@ -68,7 +68,7 @@ MPI_Fint MPIO_File_c2f(MPI_File fh)
 #else
     int i;
 
-    if ((fh <= (MPI_File) 0) || (fh->cookie != ADIOI_FILE_COOKIE))
+    if ((fh == NULL) || (fh->cookie != ADIOI_FILE_COOKIE))
         return (MPI_Fint) 0;
     if (!ADIOI_Ftable) {
         ADIOI_Ftable_max = 1024;

http://git.mpich.org/mpich.git/commitdiff/927f18ea9a0fb24e0812ae8776d191162f5474a5

commit 927f18ea9a0fb24e0812ae8776d191162f5474a5
Author: Pavan Balaji <balaji at anl.gov>
Date:   Sat Feb 13 16:57:40 2016 -0600

    Bug-fix: incorrect assertion.
    
    The assertion was doing an assignment ('=') instead of a check ('==')
    for whether the data fits inside an integer.
    
    Signed-off-by: Xin Zhao <xinzhao3 at illinois.edu>

diff --git a/src/mpid/ch3/src/ch3u_handle_recv_req.c b/src/mpid/ch3/src/ch3u_handle_recv_req.c
index fe167bd..c2c7ec2 100644
--- a/src/mpid/ch3/src/ch3u_handle_recv_req.c
+++ b/src/mpid/ch3/src/ch3u_handle_recv_req.c
@@ -1327,7 +1327,7 @@ static inline int perform_acc_in_lock_queue(MPID_Win * win_ptr,
 
         /* Note: here stream_offset is 0 because when piggybacking LOCK, we must use
          * the first stream unit. */
-        MPIU_Assert(recv_count = (int) recv_count);
+        MPIU_Assert(recv_count == (int) recv_count);
         mpi_errno = do_accumulate_op(target_lock_entry->data, (int) recv_count, acc_pkt->datatype,
                                      acc_pkt->addr, acc_pkt->count, acc_pkt->datatype,
                                      0, acc_pkt->op);

-----------------------------------------------------------------------

Summary of changes:
 src/mpi/coll/ired_scat_block.c                  |    1 -
 src/mpi/coll/red_scat.c                         |    6 ++++++
 src/mpi/coll/red_scat_block.c                   |    7 +++++++
 src/mpi/romio/mpi-io/glue/default/mpio_file.c   |    2 +-
 src/mpi/romio/mpi-io/glue/mpich/mpio_file.c     |    2 +-
 src/mpi/romio/mpi-io/glue/openmpi/mpio_file.c   |    2 +-
 src/mpid/ch3/src/ch3u_handle_recv_req.c         |    2 +-
 src/mpid/ch3/src/ch3u_port.c                    |    4 ++++
 src/mpid/ch3/src/mpidi_rma.c                    |    2 +-
 src/pm/hydra/pm/pmiserv/pmip_cb.c               |    2 ++
 src/pm/hydra/tools/bootstrap/src/bsci_init.c.in |    2 +-
 src/pm/hydra/ui/utils/uiu.c                     |    1 +
 src/pm/hydra/utils/args/args.c                  |    2 +-
 src/pmi/simple/simple_pmi.c                     |    2 ++
 14 files changed, 29 insertions(+), 8 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list