[mpich2-commits] r7722 - mpich2/trunk/src/mpid/ch3/channels/nemesis/src
buntinas at mcs.anl.gov
buntinas at mcs.anl.gov
Thu Jan 13 14:41:46 CST 2011
Author: buntinas
Date: 2011-01-13 14:41:46 -0600 (Thu, 13 Jan 2011)
New Revision: 7722
Modified:
mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isend.c
mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isendv.c
mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsg.c
mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsgv.c
Log:
Added checks for failed VCs to shared memory send functions
Modified: mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isend.c
===================================================================
--- mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isend.c 2011-01-13 20:29:48 UTC (rev 7721)
+++ mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isend.c 2011-01-13 20:41:46 UTC (rev 7722)
@@ -24,6 +24,13 @@
MPIDI_FUNC_ENTER(MPID_STATE_MPIDI_CH3_ISEND);
+ if (vc->state == MPIDI_VC_STATE_MORIBUND) {
+ sreq->status.MPI_ERROR = MPI_SUCCESS;
+ MPIU_ERR_SET1(sreq->status.MPI_ERROR, MPI_ERR_OTHER, "**comm_fail", "**comm_fail %d", vc->pg_rank);
+ MPIDI_CH3U_Request_complete(sreq);
+ goto fn_fail;
+ }
+
if (((MPIDI_CH3I_VC *)vc->channel_private)->iSendContig)
{
mpi_errno = ((MPIDI_CH3I_VC *)vc->channel_private)->iSendContig(vc, sreq, hdr, hdr_sz, NULL, 0);
Modified: mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isendv.c
===================================================================
--- mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isendv.c 2011-01-13 20:29:48 UTC (rev 7721)
+++ mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_isendv.c 2011-01-13 20:41:46 UTC (rev 7722)
@@ -28,6 +28,13 @@
MPIDI_FUNC_ENTER(MPID_STATE_MPIDI_CH3_ISENDV);
+ if (vc->state == MPIDI_VC_STATE_MORIBUND) {
+ sreq->status.MPI_ERROR = MPI_SUCCESS;
+ MPIU_ERR_SET1(sreq->status.MPI_ERROR, MPI_ERR_OTHER, "**comm_fail", "**comm_fail %d", vc->pg_rank);
+ MPIDI_CH3U_Request_complete(sreq);
+ goto fn_fail;
+ }
+
if (vc_ch->iSendContig)
{
MPIU_Assert(n_iov > 0);
Modified: mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsg.c
===================================================================
--- mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsg.c 2011-01-13 20:29:48 UTC (rev 7721)
+++ mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsg.c 2011-01-13 20:41:46 UTC (rev 7722)
@@ -33,6 +33,8 @@
MPIDI_FUNC_ENTER(MPID_STATE_MPIDI_CH3_ISTARTMSG);
+ MPIU_ERR_CHKANDJUMP1(vc->state == MPIDI_VC_STATE_MORIBUND, mpi_errno, MPI_ERR_OTHER, "**comm_fail", "**comm_fail %d", vc->pg_rank);
+
if (((MPIDI_CH3I_VC *)vc->channel_private)->iStartContigMsg)
{
mpi_errno = ((MPIDI_CH3I_VC *)vc->channel_private)->iStartContigMsg(vc, hdr, hdr_sz, NULL, 0, sreq_ptr);
Modified: mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsgv.c
===================================================================
--- mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsgv.c 2011-01-13 20:29:48 UTC (rev 7721)
+++ mpich2/trunk/src/mpid/ch3/channels/nemesis/src/ch3_istartmsgv.c 2011-01-13 20:41:46 UTC (rev 7722)
@@ -41,6 +41,8 @@
MPIDI_FUNC_ENTER(MPID_STATE_MPIDI_CH3_ISTARTMSGV);
+ MPIU_ERR_CHKANDJUMP1(vc->state == MPIDI_VC_STATE_MORIBUND, mpi_errno, MPI_ERR_OTHER, "**comm_fail", "**comm_fail %d", vc->pg_rank);
+
if (((MPIDI_CH3I_VC *)vc->channel_private)->iStartContigMsg)
{
MPIU_Assert (n_iov > 0);
More information about the mpich2-commits
mailing list