From 39c930b16080075c86faed564b026ad672135cfb Mon Sep 17 00:00:00 2001 From: Gleb Natapov Date: Sun, 3 Dec 2006 08:55:59 +0000 Subject: [PATCH] The bug fixing part of r12720 introduce much more serious bug that it fixes. It calls mca_pml_ob1_send_fin_btl() which may fail and doesn't check return code. This breaks all RDMA transports event when only one BTL is used. Revert it for now, I am working on a real fix for the problem (I hope). This commit was SVN r12731. The following SVN revision numbers were found above: r12720 --> open-mpi/ompi@3e3689320bb0106c5e1024400bd025f13b3f4474 --- ompi/mca/pml/ob1/pml_ob1_sendreq.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/ompi/mca/pml/ob1/pml_ob1_sendreq.c b/ompi/mca/pml/ob1/pml_ob1_sendreq.c index f31a8b04e5..7d7aec8fb0 100644 --- a/ompi/mca/pml/ob1/pml_ob1_sendreq.c +++ b/ompi/mca/pml/ob1/pml_ob1_sendreq.c @@ -1016,14 +1016,9 @@ static void mca_pml_ob1_put_completion( mca_btl_base_module_t* btl, ORTE_ERROR_LOG(status); orte_errmgr.abort(); } - /** - * The FIN message should be send using the same BML_BTL. Otherwise, when - * we have multiple BTL available between 2 peers, the ACK might reach the - * destination before the rdma complete (e.g. TCP). In the case there is - * only one BTL avaialble this hack does not make any difference. - */ - mca_pml_ob1_send_fin_btl( sendreq->req_send.req_base.req_proc, bml_btl, - frag->rdma_hdr.hdr_rdma.hdr_des.pval ); + + mca_pml_ob1_send_fin(sendreq->req_send.req_base.req_proc, + frag->rdma_hdr.hdr_rdma.hdr_des.pval); /* check for request completion */ if( OPAL_THREAD_ADD_SIZE_T(&sendreq->req_bytes_delivered, frag->rdma_length)