Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

From: Gleb Natapov (glebn_at_[hidden])
Date: 2007-05-27 14:45:59


On Sun, May 27, 2007 at 10:32:26AM -0600, Galen Shipman wrote:
> Can we get rid of mca_pml_ob1_send_fin_btl and just have
> mca_pml_ob1_send_fin? It seems we should just always send the fin
> over the same btl and this would clean up the code a bit.

Yes. It should be possible. I'll do that.

> On May 27, 2007, at 2:29 AM, gleb_at_[hidden] wrote:
>
> > Author: gleb
> > Date: 2007-05-27 04:29:38 EDT (Sun, 27 May 2007)
> > New Revision: 14780
> > URL: https://svn.open-mpi.org/trac/ompi/changeset/14780
> >
> > Log:
> > Fix out of resource handling for FIN packets broken by r14768.
> >
> > Text files modified:
> > trunk/ompi/mca/pml/ob1/pml_ob1.c | 7 +++----
> > trunk/ompi/mca/pml/ob1/pml_ob1.h | 14 ++++++++++++--
> > 2 files changed, 15 insertions(+), 6 deletions(-)
> >
> > Modified: trunk/ompi/mca/pml/ob1/pml_ob1.c
> > ======================================================================
> > ========
> > --- trunk/ompi/mca/pml/ob1/pml_ob1.c (original)
> > +++ trunk/ompi/mca/pml/ob1/pml_ob1.c 2007-05-27 04:29:38 EDT (Sun,
> > 27 May 2007)
> > @@ -249,7 +249,7 @@
> > MCA_PML_OB1_PROGRESS_PENDING(bml_btl);
> > }
> >
> > -int mca_pml_ob1_send_fin(
> > +int mca_pml_ob1_send_fin_btl(
> > ompi_proc_t* proc,
> > mca_bml_base_btl_t* bml_btl,
> > void *hdr_des,
> > @@ -260,9 +260,8 @@
> > mca_pml_ob1_fin_hdr_t* hdr;
> > int rc;
> >
> > - MCA_PML_OB1_DES_ALLOC(bml_btl, fin, order, sizeof
> > (mca_pml_ob1_fin_hdr_t));
> > + MCA_PML_OB1_DES_ALLOC(bml_btl, fin, order, sizeof
> > (mca_pml_ob1_fin_hdr_t));
> > if(NULL == fin) {
> > - MCA_PML_OB1_ADD_FIN_TO_PENDING(proc, hdr_des, bml_btl,
> > order);
> > return OMPI_ERR_OUT_OF_RESOURCE;
> > }
> > fin->des_flags |= MCA_BTL_DES_FLAGS_PRIORITY;
> > @@ -349,7 +348,7 @@
> > }
> > break;
> > case MCA_PML_OB1_HDR_TYPE_FIN:
> > - rc = mca_pml_ob1_send_fin(pckt->proc, send_dst,
> > + rc = mca_pml_ob1_send_fin_btl(pckt->proc, send_dst,
> > pckt-
> > >hdr.hdr_fin.hdr_des.pval,
> > pckt->order);
> > MCA_PML_OB1_PCKT_PENDING_RETURN(pckt);
> >
> > Modified: trunk/ompi/mca/pml/ob1/pml_ob1.h
> > ======================================================================
> > ========
> > --- trunk/ompi/mca/pml/ob1/pml_ob1.h (original)
> > +++ trunk/ompi/mca/pml/ob1/pml_ob1.h 2007-05-27 04:29:38 EDT (Sun,
> > 27 May 2007)
> > @@ -283,9 +283,19 @@
> > } while(0)
> >
> >
> > -int mca_pml_ob1_send_fin(ompi_proc_t* proc, mca_bml_base_btl_t*
> > bml_btl,
> > - void *hdr_des, uint8_t order);
> > +int mca_pml_ob1_send_fin_btl(ompi_proc_t* proc,
> > mca_bml_base_btl_t* bml_btl,
> > + void *hdr_des, uint8_t order);
> >
> > +static inline int mca_pml_ob1_send_fin(ompi_proc_t* proc, void
> > *hdr_des,
> > + mca_bml_base_btl_t* bml_btl, uint8_t order)
> > +{
> > + if(mca_pml_ob1_send_fin_btl(proc, bml_btl, hdr_des, order) ==
> > OMPI_SUCCESS)
> > + return OMPI_SUCCESS;
> > +
> > + MCA_PML_OB1_ADD_FIN_TO_PENDING(proc, hdr_des, bml_btl, order);
> > +
> > + return OMPI_ERR_OUT_OF_RESOURCE;
> > +}
> >
> > /* This function tries to resend FIN/ACK packets from pckt_pending
> > queue.
> > * Packets are added to the queue when sending of FIN or ACK is
> > failed due to
> > _______________________________________________
> > svn mailing list
> > svn_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/svn
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

--
			Gleb.