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, g...@osl.iu.edu 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
> > s...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/svn
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

--
                        Gleb.

Reply via email to