[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1.3-35-gcce767b
Service Account
noreply at mpich.org
Wed Oct 22 11:35:16 CDT 2014
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 cce767b33839004e51051fe5de965b2903e520c0 (commit)
via e49213d68edd3690e7279a15a97c64cf98961b47 (commit)
from 786b3e98a54107e844d43cfc4b27f71baacba47e (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/cce767b33839004e51051fe5de965b2903e520c0
commit cce767b33839004e51051fe5de965b2903e520c0
Author: Wesley Bland <wbland at anl.gov>
Date: Tue Oct 21 14:58:15 2014 -0500
Don't try to destroy a request if it doesn't exist
In the macro MPID_nem_lmt_send_RTS, the request for the send was being freed
on an error even if it didn't exist. This caused a segfault if calling a bcast
after a process previously failed.
Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>
diff --git a/src/mpid/ch3/channels/nemesis/include/mpid_nem_impl.h b/src/mpid/ch3/channels/nemesis/include/mpid_nem_impl.h
index c32e9df..a726b7d 100644
--- a/src/mpid/ch3/channels/nemesis/include/mpid_nem_impl.h
+++ b/src/mpid/ch3/channels/nemesis/include/mpid_nem_impl.h
@@ -151,8 +151,10 @@ typedef union MPIDI_CH3_nem_pkt
/* --BEGIN ERROR HANDLING-- */ \
if (mpi_errno != MPI_SUCCESS) \
{ \
- MPIU_Object_set_ref(_rts_req, 0); \
- MPIDI_CH3_Request_destroy(_rts_req); \
+ if (NULL != _rts_req) { \
+ MPIU_Object_set_ref(_rts_req, 0); \
+ MPIDI_CH3_Request_destroy(_rts_req); \
+ } \
MPIU_ERR_SETANDJUMP(mpi_errno, MPI_ERR_OTHER, "**rtspkt"); \
} \
/* --END ERROR HANDLING-- */ \
http://git.mpich.org/mpich.git/commitdiff/e49213d68edd3690e7279a15a97c64cf98961b47
commit e49213d68edd3690e7279a15a97c64cf98961b47
Author: Wesley Bland <wbland at anl.gov>
Date: Tue Oct 21 10:27:20 2014 -0500
Fix typo in bcast macro
The macro that called the bcast function left out an underscore in the
mpi_errno return value. This caused the test to always return MPI_ERR_OTHER
instead of the value being returned by the underlying bcast function.
Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>
diff --git a/src/mpi/coll/bcast.c b/src/mpi/coll/bcast.c
index 836dd4d..7e42727 100644
--- a/src/mpi/coll/bcast.c
+++ b/src/mpi/coll/bcast.c
@@ -982,7 +982,7 @@ fn_fail:
/* for communication errors, just record the error but continue */ \
*(errflag_) = TRUE; \
MPIU_ERR_SET(mpi_errno_, MPI_ERR_OTHER, "**fail"); \
- MPIU_ERR_ADD(mpi_errno_ret_, mpi_errno); \
+ MPIU_ERR_ADD(mpi_errno_ret_, mpi_errno_); \
} \
} while (0)
diff --git a/test/mpi/ft/bcast.c b/test/mpi/ft/bcast.c
index 06cfeff..8c877a9 100644
--- a/test/mpi/ft/bcast.c
+++ b/test/mpi/ft/bcast.c
@@ -27,6 +27,10 @@ int main(int argc, char **argv)
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
+ MPI_Comm_group(MPI_COMM_WORLD, &world);
+ MPI_Group_excl(world, 1, deadprocs, &newgroup);
+ MPI_Comm_create_group(MPI_COMM_WORLD, newgroup, 0, &newcomm);
+
if (size < 3) {
fprintf( stderr, "Must run with at least 3 processes\n" );
MPI_Abort( MPI_COMM_WORLD, 1 );
@@ -66,10 +70,6 @@ int main(int argc, char **argv)
}
#endif
- MPI_Comm_group(MPI_COMM_WORLD, &world);
- MPI_Group_excl(world, 1, deadprocs, &newgroup);
- MPI_Comm_create_group(MPI_COMM_WORLD, newgroup, 0, &newcomm);
-
rc = MPI_Reduce(&errs, &toterrs, 1, MPI_INT, MPI_SUM, 0, newcomm);
if(rc)
fprintf(stderr, "Failed to get errors from other processes\n");
-----------------------------------------------------------------------
Summary of changes:
src/mpi/coll/bcast.c | 2 +-
.../ch3/channels/nemesis/include/mpid_nem_impl.h | 6 ++++--
test/mpi/ft/bcast.c | 8 ++++----
3 files changed, 9 insertions(+), 7 deletions(-)
hooks/post-receive
--
MPICH primary repository
More information about the commits
mailing list