diff --git a/ompi/datatype/convertor.c b/ompi/datatype/convertor.c index 8f2183ba17..e10355f357 100644 --- a/ompi/datatype/convertor.c +++ b/ompi/datatype/convertor.c @@ -224,7 +224,7 @@ ompi_convertor_t* ompi_convertor_create( int32_t remote_arch, int32_t mode ) */ int32_t ompi_convertor_pack( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ) + size_t* max_data ) { OMPI_CONVERTOR_SET_STATUS_BEFORE_PACK_UNPACK( pConv, iov, out_size, max_data ); @@ -265,12 +265,12 @@ int32_t ompi_convertor_pack( ompi_convertor_t* pConv, return 0; } - return pConv->fAdvance( pConv, iov, out_size, max_data, freeAfter ); + return pConv->fAdvance( pConv, iov, out_size, max_data ); } int32_t ompi_convertor_unpack( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ) + size_t* max_data ) { OMPI_CONVERTOR_SET_STATUS_BEFORE_PACK_UNPACK( pConv, iov, out_size, max_data ); @@ -311,7 +311,7 @@ int32_t ompi_convertor_unpack( ompi_convertor_t* pConv, return 1; } - return pConv->fAdvance( pConv, iov, out_size, max_data, freeAfter ); + return pConv->fAdvance( pConv, iov, out_size, max_data ); } static inline @@ -500,7 +500,6 @@ ompi_convertor_prepare_for_recv( ompi_convertor_t* convertor, /* Here I should check that the data is not overlapping */ convertor->flags |= CONVERTOR_RECV; - convertor->memAlloc_fn = NULL; OMPI_CONVERTOR_PREPARE( convertor, datatype, count, pUserBuf ); @@ -537,7 +536,6 @@ ompi_convertor_prepare_for_send( ompi_convertor_t* convertor, const void* pUserBuf ) { convertor->flags |= CONVERTOR_SEND; - convertor->memAlloc_fn = NULL; OMPI_CONVERTOR_PREPARE( convertor, datatype, count, pUserBuf ); @@ -586,8 +584,6 @@ int ompi_convertor_clone( const ompi_convertor_t* source, destination->count = source->count; destination->pBaseBuf = source->pBaseBuf; destination->fAdvance = source->fAdvance; - destination->memAlloc_fn = source->memAlloc_fn; - destination->memAlloc_userdata = source->memAlloc_userdata; destination->master = source->master; destination->local_size = source->local_size; destination->remote_size = source->remote_size; diff --git a/ompi/datatype/convertor.h b/ompi/datatype/convertor.h index 890ef1d356..cb92b1daeb 100644 --- a/ompi/datatype/convertor.h +++ b/ompi/datatype/convertor.h @@ -56,8 +56,7 @@ typedef struct ompi_convertor_t ompi_convertor_t; typedef int32_t (*convertor_advance_fct_t)( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ); + size_t* max_data ); typedef void*(*memalloc_fct_t)( size_t* pLength, void* userdata ); /* The master convertor struct (defined in convertor_internal.h) */ @@ -89,8 +88,6 @@ struct ompi_convertor_t { dt_stack_t* pStack; /**< the local stack for the actual conversion */ uint32_t stack_size; /**< size of the allocated stack */ convertor_advance_fct_t fAdvance; /**< pointer to the pack/unpack functions */ - memalloc_fct_t memAlloc_fn; /**< pointer to the memory allocation function */ - void* memAlloc_userdata; /**< user data for the malloc function */ struct ompi_convertor_master_t* master; /* the master convertor */ /* All others fields get modified for every call to pack/unpack functions */ uint32_t stack_pos; /**< the actual position on the stack */ @@ -124,8 +121,7 @@ OMPI_DECLSPEC int32_t ompi_convertor_pack( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ); + size_t* max_data ); /* * @@ -134,8 +130,7 @@ OMPI_DECLSPEC int32_t ompi_convertor_unpack( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ); + size_t* max_data ); /* * @@ -280,12 +275,9 @@ ompi_convertor_set_position( ompi_convertor_t* convertor, */ static inline int32_t ompi_convertor_personalize( ompi_convertor_t* convertor, uint32_t flags, - size_t* position, - memalloc_fct_t allocfn, void* userdata ) + size_t* position ) { convertor->flags |= flags; - convertor->memAlloc_fn = allocfn; - convertor->memAlloc_userdata = userdata; if( NULL == position ) return OMPI_SUCCESS; diff --git a/ompi/datatype/datatype_pack.c b/ompi/datatype/datatype_pack.c index 79d267775c..f27a9368a9 100644 --- a/ompi/datatype/datatype_pack.c +++ b/ompi/datatype/datatype_pack.c @@ -53,8 +53,7 @@ int32_t ompi_pack_homogeneous_contig_function( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int* freeAfter ) + size_t* max_data ) { dt_stack_t* pStack = pConv->pStack; char *source_base = NULL; @@ -62,7 +61,6 @@ ompi_pack_homogeneous_contig_function( ompi_convertor_t* pConv, size_t length = pConv->local_size - pConv->bConverted, initial_amount = pConv->bConverted; ptrdiff_t initial_displ = pConv->use_desc->desc[pConv->use_desc->used].end_loop.first_elem_disp; - *freeAfter = 0; source_base = (pConv->pBaseBuf + initial_displ + pStack[0].disp + pStack[1].disp); /* There are some optimizations that can be done if the upper level @@ -101,8 +99,7 @@ int32_t ompi_pack_homogeneous_contig_with_gaps_function( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int* freeAfter ) + size_t* max_data ) { const ompi_datatype_t* pData = pConv->pDesc; dt_stack_t* pStack = pConv->pStack; @@ -122,7 +119,6 @@ ompi_pack_homogeneous_contig_with_gaps_function( ompi_convertor_t* pConv, i = (uint32_t)(pConv->bConverted / pData->size); /* how many we already pack */ - *freeAfter = 0; /* There are some optimizations that can be done if the upper level * does not provide a buffer. */ @@ -189,17 +185,6 @@ ompi_pack_homogeneous_contig_with_gaps_function( ompi_convertor_t* pConv, uint32_t counter; size_t done; - if( iov[iov_count].iov_base == NULL ) { - size_t length = iov[iov_count].iov_len; - if( 0 == length ) length = max_allowed; - iov[iov_count].iov_base = (IOVBASE_TYPE*)pConv->memAlloc_fn( &length, pConv->memAlloc_userdata ); - iov[iov_count].iov_len = length; - (*freeAfter) |= (1 << 0); - if( max_allowed < (size_t)iov[iov_count].iov_len ) - iov[iov_count].iov_len = max_allowed; - else - max_allowed = iov[iov_count].iov_len; - } packed_buffer = iov[iov_count].iov_base; done = pConv->bConverted - i * pData->size; /* how much data left last time */ user_memory += done; @@ -254,8 +239,7 @@ ompi_pack_homogeneous_contig_with_gaps_function( ompi_convertor_t* pConv, int32_t ompi_generic_simple_pack_function( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ) + size_t* max_data ) { dt_stack_t* pStack; /* pointer to the position on the stack */ uint32_t pos_desc; /* actual position in the description of the derived datatype */ @@ -293,20 +277,6 @@ ompi_generic_simple_pack_function( ompi_convertor_t* pConvertor, pConvertor->stack_pos, pStack->index, pStack->count, pStack->disp ); ); for( iov_count = 0; iov_count < (*out_size); iov_count++ ) { - if( iov[iov_count].iov_base == NULL ) { - /* - * ALLOCATE SOME MEMORY ... - */ - size_t length = iov[iov_count].iov_len; - if( length <= 0 ) - length = pConvertor->local_size - pConvertor->bConverted; - if( ((*max_data) - total_packed) < length ) - length = (*max_data) - total_packed; - assert( 0 < length ); - iov[iov_count].iov_base = (IOVBASE_TYPE*)pConvertor->memAlloc_fn( &length, pConvertor->memAlloc_userdata ); - iov[iov_count].iov_len = length; - *freeAfter = (*freeAfter) | (1 << iov_count); - } destination = iov[iov_count].iov_base; iov_len_local = iov[iov_count].iov_len; while( 1 ) { diff --git a/ompi/datatype/datatype_prototypes.h b/ompi/datatype/datatype_prototypes.h index 34c85ab583..186da23628 100644 --- a/ompi/datatype/datatype_prototypes.h +++ b/ompi/datatype/datatype_prototypes.h @@ -18,50 +18,50 @@ OMPI_DECLSPEC int32_t ompi_pack_homogeneous_contig( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_pack_homogeneous_contig_checksum( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_pack_homogeneous_contig_with_gaps( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_pack_homogeneous_contig_with_gaps_checksum( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_generic_simple_pack( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_generic_simple_pack_checksum( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_unpack_general( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_unpack_general_checksum( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_unpack_homogeneous_contig( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_unpack_homogeneous_contig_checksum( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_generic_simple_unpack( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); OMPI_DECLSPEC int32_t ompi_generic_simple_unpack_checksum( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, int32_t* freeAfter ); + size_t* max_data ); #endif /* DATATYPE_PROTOTYPES_H_HAS_BEEN_INCLUDED */ diff --git a/ompi/datatype/datatype_unpack.c b/ompi/datatype/datatype_unpack.c index 7896346980..fa6b177460 100644 --- a/ompi/datatype/datatype_unpack.c +++ b/ompi/datatype/datatype_unpack.c @@ -58,8 +58,7 @@ int32_t ompi_unpack_general_function( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ) + size_t* max_data ) { dt_stack_t* pStack; /* pointer to the position on the stack */ uint32_t pos_desc; /* actual position in the description of the derived datatype */ @@ -184,8 +183,7 @@ int32_t ompi_unpack_homogeneous_contig_function( ompi_convertor_t* pConv, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ) + size_t* max_data ) { const ompi_datatype_t *pData = pConv->pDesc; char *user_memory, *packed_buffer; @@ -345,8 +343,7 @@ ompi_unpack_partial_datatype( ompi_convertor_t* pConvertor, dt_elem_desc_t* pEle int32_t ompi_generic_simple_unpack_function( ompi_convertor_t* pConvertor, struct iovec* iov, uint32_t* out_size, - size_t* max_data, - int32_t* freeAfter ) + size_t* max_data ) { dt_stack_t* pStack; /* pointer to the position on the stack */ uint32_t pos_desc; /* actual position in the description of the derived datatype */ diff --git a/ompi/datatype/dt_sndrcv.c b/ompi/datatype/dt_sndrcv.c index 0cb71dbd90..2f71d749ae 100644 --- a/ompi/datatype/dt_sndrcv.c +++ b/ompi/datatype/dt_sndrcv.c @@ -46,7 +46,6 @@ int32_t ompi_ddt_sndrcv( void *sbuf, int32_t scount, const ompi_datatype_t* sdty int length, completed; uint32_t iov_count; size_t max_data; - int32_t freeAfter; /* First check if we really have something to do */ if (0 == rcount) { @@ -68,14 +67,14 @@ int32_t ompi_ddt_sndrcv( void *sbuf, int32_t scount, const ompi_datatype_t* sdty if (rdtype == MPI_PACKED) { send_convertor = OBJ_NEW(ompi_convertor_t); ompi_convertor_prepare_for_send( send_convertor, sdtype, scount, sbuf ); - ompi_convertor_personalize( send_convertor, 0, 0, NULL, NULL ); + ompi_convertor_personalize( send_convertor, 0, 0 ); iov_count = 1; iov.iov_len = rcount; iov.iov_base = (IOVBASE_TYPE*)rbuf; max_data = ( (size_t)iov.iov_len > (scount * sdtype->size) ? (scount * sdtype->size) : iov.iov_len ); - err = ompi_convertor_pack( send_convertor, &iov, &iov_count, &max_data, &freeAfter ); + err = ompi_convertor_pack( send_convertor, &iov, &iov_count, &max_data ); OBJ_RELEASE( send_convertor ); return ((max_data < (uint32_t)rcount) ? MPI_ERR_TRUNCATE : MPI_SUCCESS); } @@ -90,7 +89,7 @@ int32_t ompi_ddt_sndrcv( void *sbuf, int32_t scount, const ompi_datatype_t* sdty iov.iov_base = (IOVBASE_TYPE*)sbuf; max_data = ( (size_t)iov.iov_len < (rcount * rdtype->size) ? iov.iov_len : (rcount * rdtype->size) ); - err = ompi_convertor_unpack( recv_convertor, &iov, &iov_count, &max_data, &freeAfter ); + err = ompi_convertor_unpack( recv_convertor, &iov, &iov_count, &max_data ); if( scount > (int32_t)(rcount * rdtype->size) ) err = MPI_ERR_TRUNCATE; OBJ_RELEASE( recv_convertor ); @@ -110,8 +109,8 @@ int32_t ompi_ddt_sndrcv( void *sbuf, int32_t scount, const ompi_datatype_t* sdty iov.iov_len = length; iov_count = 1; max_data = length; - completed |= ompi_convertor_pack( send_convertor, &iov, &iov_count, &max_data, &freeAfter ); - completed |= ompi_convertor_unpack( recv_convertor, &iov, &iov_count, &max_data, &freeAfter ); + completed |= ompi_convertor_pack( send_convertor, &iov, &iov_count, &max_data ); + completed |= ompi_convertor_unpack( recv_convertor, &iov, &iov_count, &max_data ); } free( iov.iov_base ); OBJ_RELEASE( send_convertor ); diff --git a/ompi/mca/btl/gm/btl_gm.c b/ompi/mca/btl/gm/btl_gm.c index 2cbd4f5ee1..926cccdbb1 100644 --- a/ompi/mca/btl/gm/btl_gm.c +++ b/ompi/mca/btl/gm/btl_gm.c @@ -271,7 +271,6 @@ mca_btl_base_descriptor_t* mca_btl_gm_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; #if (OMPI_MCA_BTL_GM_HAVE_RDMA_GET || OMPI_MCA_BTL_GM_HAVE_RDMA_PUT) @@ -293,7 +292,7 @@ mca_btl_base_descriptor_t* mca_btl_gm_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); frag->segment.seg_len = max_data; frag->segment.seg_addr.pval = iov.iov_base; @@ -330,7 +329,7 @@ mca_btl_base_descriptor_t* mca_btl_gm_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); frag->segment.seg_len = max_data; frag->segment.seg_addr.pval = iov.iov_base; @@ -363,7 +362,7 @@ mca_btl_base_descriptor_t* mca_btl_gm_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { MCA_BTL_GM_FRAG_RETURN(btl, frag); @@ -389,7 +388,7 @@ mca_btl_base_descriptor_t* mca_btl_gm_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { diff --git a/ompi/mca/btl/mvapi/btl_mvapi.c b/ompi/mca/btl/mvapi/btl_mvapi.c index 937db50faf..c25c8f08df 100644 --- a/ompi/mca/btl/mvapi/btl_mvapi.c +++ b/ompi/mca/btl/mvapi/btl_mvapi.c @@ -272,7 +272,6 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; @@ -290,7 +289,7 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; frag->segment.seg_len = max_data; @@ -333,7 +332,7 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; frag->segment.seg_len = max_data; @@ -378,7 +377,7 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*)frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { MCA_BTL_IB_FRAG_RETURN(btl, frag); @@ -407,7 +406,7 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*)frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { diff --git a/ompi/mca/btl/mx/btl_mx.c b/ompi/mca/btl/mx/btl_mx.c index 445e1d2be0..dc271176aa 100644 --- a/ompi/mca/btl/mx/btl_mx.c +++ b/ompi/mca/btl/mx/btl_mx.c @@ -253,7 +253,6 @@ mca_btl_base_descriptor_t* mca_btl_mx_prepare_src( struct mca_btl_base_module_t* struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; @@ -291,7 +290,7 @@ mca_btl_base_descriptor_t* mca_btl_mx_prepare_src( struct mca_btl_base_module_t* frag->base.des_src_cnt = 1; } - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { MCA_BTL_MX_FRAG_RETURN( mx_btl, frag ); diff --git a/ompi/mca/btl/openib/btl_openib.c b/ompi/mca/btl/openib/btl_openib.c index 3721cd9732..61be9502e4 100644 --- a/ompi/mca/btl/openib/btl_openib.c +++ b/ompi/mca/btl/openib/btl_openib.c @@ -341,7 +341,6 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; openib_btl = (mca_btl_openib_module_t*) btl; @@ -361,7 +360,7 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); frag->segment.seg_len = max_data; frag->segment.seg_addr.pval = iov.iov_base; @@ -399,7 +398,7 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); frag->segment.seg_len = max_data; frag->segment.seg_addr.pval = iov.iov_base; @@ -447,7 +446,7 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*)frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { MCA_BTL_IB_FRAG_RETURN(openib_btl, frag); @@ -476,7 +475,7 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*)frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { diff --git a/ompi/mca/btl/portals/btl_portals.c b/ompi/mca/btl/portals/btl_portals.c index a11e12aafe..fda889f9cd 100644 --- a/ompi/mca/btl/portals/btl_portals.c +++ b/ompi/mca/btl/portals/btl_portals.c @@ -304,7 +304,6 @@ mca_btl_portals_prepare_src(struct mca_btl_base_module_t* btl_base, size_t max_data = *size; struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; int ret; assert(&mca_btl_portals_module == (mca_btl_portals_module_t*) btl_base); @@ -323,7 +322,7 @@ mca_btl_portals_prepare_src(struct mca_btl_base_module_t* btl_base, iov.iov_len = max_data; iov.iov_base = (unsigned char*) frag->segments[0].seg_addr.pval + reserve; ret = ompi_convertor_pack(convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); *size = max_data; if ( ret < 0 ) { return NULL; @@ -352,8 +351,7 @@ mca_btl_portals_prepare_src(struct mca_btl_base_module_t* btl_base, iov.iov_len = max_data; iov.iov_base = NULL; - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, - &free_after); + ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); frag->segments[0].seg_len = max_data; frag->segments[0].seg_addr.pval = iov.iov_base; diff --git a/ompi/mca/btl/self/btl_self.c b/ompi/mca/btl/self/btl_self.c index 6997a07d6d..010bf612a4 100644 --- a/ompi/mca/btl/self/btl_self.c +++ b/ompi/mca/btl/self/btl_self.c @@ -64,35 +64,35 @@ mca_btl_base_module_t mca_btl_self = { mca_btl_self_prepare_dst, mca_btl_self_send, mca_btl_self_rdma, /* put */ - mca_btl_self_rdma, + mca_btl_self_rdma, /* get */ mca_btl_base_dump, NULL, /* mpool */ NULL /* register error cb */ }; -int mca_btl_self_add_procs( - struct mca_btl_base_module_t* btl, - size_t nprocs, - struct ompi_proc_t **procs, - struct mca_btl_base_endpoint_t **peers, - ompi_bitmap_t* reachability) +int mca_btl_self_add_procs( struct mca_btl_base_module_t* btl, + size_t nprocs, + struct ompi_proc_t **procs, + struct mca_btl_base_endpoint_t **peers, + ompi_bitmap_t* reachability ) { size_t i; - for(i=0; ibase.des_flags = 0; + frag->base.des_flags = 0; + frag->base.des_src = &(frag->segment); + frag->base.des_src_cnt = 1; return (mca_btl_base_descriptor_t*)frag; } @@ -173,11 +173,16 @@ extern mca_btl_base_descriptor_t* mca_btl_self_alloc( * @param btl (IN) BTL module * @param segment (IN) Allocated segment. */ -extern int mca_btl_self_free( - struct mca_btl_base_module_t* btl, - mca_btl_base_descriptor_t* des) +int mca_btl_self_free( struct mca_btl_base_module_t* btl, + mca_btl_base_descriptor_t* des ) { mca_btl_self_frag_t* frag = (mca_btl_self_frag_t*)des; + + frag->base.des_src = NULL; + frag->base.des_src_cnt = 0; + frag->base.des_dst = NULL; + frag->base.des_dst_cnt = 0; + if(frag->size == mca_btl_self.btl_eager_limit) { MCA_BTL_SELF_FRAG_RETURN_EAGER(frag); } else if (frag->size == mca_btl_self.btl_max_send_size) { @@ -206,11 +211,13 @@ struct mca_btl_base_descriptor_t* mca_btl_self_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; /* non-contigous data */ - if(ompi_convertor_need_buffers(convertor) || max_data < mca_btl_self.btl_max_send_size || reserve != 0) { + if( ompi_convertor_need_buffers(convertor) || + max_data < mca_btl_self.btl_max_send_size || + reserve != 0 ) { + MCA_BTL_SELF_FRAG_ALLOC_SEND(frag, rc); if(NULL == frag) { return NULL; @@ -222,7 +229,7 @@ struct mca_btl_base_descriptor_t* mca_btl_self_prepare_src( iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)((unsigned char*)(frag+1) + reserve); - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); if(rc < 0) { MCA_BTL_SELF_FRAG_RETURN_SEND(frag); return NULL; @@ -240,20 +247,19 @@ struct mca_btl_base_descriptor_t* mca_btl_self_prepare_src( iov.iov_base = NULL; /* convertor should return offset into users buffer */ - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); if(rc < 0) { MCA_BTL_SELF_FRAG_RETURN_RDMA(frag); return NULL; } frag->segment.seg_addr.pval = iov.iov_base; frag->segment.seg_len = max_data; - frag->base.des_src = &frag->segment; - frag->base.des_src_cnt = 1; - frag->base.des_dst = NULL; - frag->base.des_dst_cnt = 0; frag->base.des_flags = 0; *size = max_data; } + frag->base.des_src = &frag->segment; + frag->base.des_src_cnt = 1; + frag->segment.seg_key.key64 = (uint64_t)(intptr_t)convertor; return &frag->base; } @@ -282,15 +288,12 @@ struct mca_btl_base_descriptor_t* mca_btl_self_prepare_dst( ompi_ddt_type_lb( convertor->pDesc, &lb ); frag->segment.seg_addr.pval = (unsigned char*)convertor->pBaseBuf + lb + convertor->bConverted; frag->segment.seg_len = reserve + max_data; - frag->base.des_src = NULL; - frag->base.des_src_cnt = 0; + frag->segment.seg_key.key64 = (uint64_t)(intptr_t)convertor; frag->base.des_dst = &frag->segment; frag->base.des_dst_cnt = 1; frag->base.des_flags = 0; return &frag->base; } - - /** * Initiate a send to the peer. @@ -299,11 +302,10 @@ struct mca_btl_base_descriptor_t* mca_btl_self_prepare_dst( * @param peer (IN) BTL peer addressing */ -int mca_btl_self_send( - struct mca_btl_base_module_t* btl, - struct mca_btl_base_endpoint_t* endpoint, - struct mca_btl_base_descriptor_t* des, - mca_btl_base_tag_t tag) +int mca_btl_self_send( struct mca_btl_base_module_t* btl, + struct mca_btl_base_endpoint_t* endpoint, + struct mca_btl_base_descriptor_t* des, + mca_btl_base_tag_t tag ) { /** * We have to set the dst before the call to the function and reset them @@ -327,10 +329,9 @@ int mca_btl_self_send( * @param peer (IN) BTL peer addressing */ -extern int mca_btl_self_rdma( - struct mca_btl_base_module_t* btl, - struct mca_btl_base_endpoint_t* endpoint, - struct mca_btl_base_descriptor_t* des) +int mca_btl_self_rdma( struct mca_btl_base_module_t* btl, + struct mca_btl_base_endpoint_t* endpoint, + struct mca_btl_base_descriptor_t* des ) { mca_btl_base_segment_t* src = des->des_src; mca_btl_base_segment_t* dst = des->des_dst; @@ -398,5 +399,3 @@ extern int mca_btl_self_rdma( des->des_cbfunc(btl,endpoint,des,OMPI_SUCCESS); return OMPI_SUCCESS; } - - diff --git a/ompi/mca/btl/sm/btl_sm.c b/ompi/mca/btl/sm/btl_sm.c index 444a824bf6..4bb05c4cd3 100644 --- a/ompi/mca/btl/sm/btl_sm.c +++ b/ompi/mca/btl/sm/btl_sm.c @@ -827,7 +827,6 @@ struct mca_btl_base_descriptor_t* mca_btl_sm_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; MCA_BTL_SM_FRAG_ALLOC2(frag, rc); @@ -841,7 +840,7 @@ struct mca_btl_base_descriptor_t* mca_btl_sm_prepare_src( iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)(((unsigned char*)(frag+1)) + reserve); - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); if(rc < 0) { MCA_BTL_SM_FRAG_RETURN(frag); return NULL; diff --git a/ompi/mca/btl/tcp/btl_tcp.c b/ompi/mca/btl/tcp/btl_tcp.c index cbf23ed605..ee757fcc9d 100644 --- a/ompi/mca/btl/tcp/btl_tcp.c +++ b/ompi/mca/btl/tcp/btl_tcp.c @@ -240,7 +240,6 @@ mca_btl_base_descriptor_t* mca_btl_tcp_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; /* @@ -277,7 +276,7 @@ mca_btl_base_descriptor_t* mca_btl_tcp_prepare_src( iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)(((unsigned char*)(frag+1)) + reserve); - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); if( rc < 0 ) { mca_btl_tcp_free(btl, &frag->base); return NULL; @@ -292,7 +291,7 @@ mca_btl_base_descriptor_t* mca_btl_tcp_prepare_src( iov.iov_len = max_data; iov.iov_base = NULL; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); if( rc < 0 ) { mca_btl_tcp_free(btl, &frag->base); return NULL; diff --git a/ompi/mca/btl/template/btl_template.c b/ompi/mca/btl/template/btl_template.c index 807b0e8ee3..6c431dda86 100644 --- a/ompi/mca/btl/template/btl_template.c +++ b/ompi/mca/btl/template/btl_template.c @@ -222,7 +222,6 @@ mca_btl_base_descriptor_t* mca_btl_template_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; @@ -240,7 +239,7 @@ mca_btl_base_descriptor_t* mca_btl_template_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { MCA_BTL_TEMPLATE_FRAG_RETURN_EAGER(btl, frag); @@ -265,7 +264,7 @@ mca_btl_base_descriptor_t* mca_btl_template_prepare_src( iov.iov_len = max_data; iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve; - rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, &free_after); + rc = ompi_convertor_pack(convertor, &iov, &iov_count, &max_data ); *size = max_data; if( rc < 0 ) { diff --git a/ompi/mca/btl/udapl/btl_udapl.c b/ompi/mca/btl/udapl/btl_udapl.c index 9361db30fb..dc2363690f 100644 --- a/ompi/mca/btl/udapl/btl_udapl.c +++ b/ompi/mca/btl/udapl/btl_udapl.c @@ -410,7 +410,6 @@ mca_btl_base_descriptor_t* mca_btl_udapl_prepare_src( struct iovec iov; uint32_t iov_count = 1; size_t max_data = *size; - int32_t free_after; int rc; #if 0 @@ -431,7 +430,7 @@ mca_btl_base_descriptor_t* mca_btl_udapl_prepare_src( iov.iov_base = NULL; ompi_convertor_pack(convertor, &iov, - &iov_count, &max_data, &free_after); + &iov_count, &max_data ); frag->segment.seg_len = max_data; frag->segment.seg_addr.pval = iov.iov_base; @@ -470,7 +469,7 @@ mca_btl_base_descriptor_t* mca_btl_udapl_prepare_src( iov.iov_base = NULL; ompi_convertor_pack(convertor, &iov, - &iov_count, &max_data, &free_after); + &iov_count, &max_data ); rc = mpool->mpool_register( @@ -511,7 +510,7 @@ mca_btl_base_descriptor_t* mca_btl_udapl_prepare_src( iov.iov_base = (char *) frag->segment.seg_addr.pval + reserve; rc = ompi_convertor_pack(convertor, - &iov, &iov_count, &max_data, &free_after); + &iov, &iov_count, &max_data ); *size = max_data; if(rc < 0) { MCA_BTL_UDAPL_FRAG_RETURN_EAGER(btl, frag); @@ -537,7 +536,7 @@ mca_btl_base_descriptor_t* mca_btl_udapl_prepare_src( iov.iov_base = (char *) frag->segment.seg_addr.pval + reserve; rc = ompi_convertor_pack(convertor, - &iov, &iov_count, &max_data, &free_after); + &iov, &iov_count, &max_data ); *size = max_data; if(rc < 0) { diff --git a/ompi/mca/coll/sm/coll_sm.h b/ompi/mca/coll/sm/coll_sm.h index 46c61e4cfd..be06cf9dc1 100644 --- a/ompi/mca/coll/sm/coll_sm.h +++ b/ompi/mca/coll/sm/coll_sm.h @@ -439,7 +439,6 @@ extern "C" { * these are thread safe) */ extern uint32_t mca_coll_sm_iov_size; -extern int32_t mca_coll_sm_bogus_free_after; /** @@ -487,7 +486,7 @@ extern int32_t mca_coll_sm_bogus_free_after; ((rank) * mca_coll_sm_component.sm_fragment_size); \ (max_data) = (iov).iov_len = mca_coll_sm_component.sm_fragment_size; \ ompi_convertor_pack(&(convertor), &(iov), &mca_coll_sm_iov_size, \ - &(max_data), &mca_coll_sm_bogus_free_after) + &(max_data) ) /** * Macro to copy a single segment out from a shared segment to a user @@ -497,7 +496,7 @@ extern int32_t mca_coll_sm_bogus_free_after; (iov).iov_base = (((char*) (index)->mcbmi_data) + \ ((src_rank) * mca_coll_sm_component.sm_fragment_size)); \ ompi_convertor_unpack(&(convertor), &(iov), &mca_coll_sm_iov_size, \ - &(max_data), &mca_coll_sm_bogus_free_after) + &(max_data) ) /** * Macro to memcpy a fragment between one shared segment and another diff --git a/ompi/mca/coll/sm/coll_sm_module.c b/ompi/mca/coll/sm/coll_sm_module.c index 468505bd2d..bbbb955a90 100644 --- a/ompi/mca/coll/sm/coll_sm_module.c +++ b/ompi/mca/coll/sm/coll_sm_module.c @@ -57,7 +57,6 @@ * Global variables */ uint32_t mca_coll_sm_iov_size = 1; -int32_t mca_coll_sm_bogus_free_after = 0; /* diff --git a/ompi/mca/mtl/base/mtl_base_datatype.h b/ompi/mca/mtl/base/mtl_base_datatype.h index ed520f2790..c377c2678b 100644 --- a/ompi/mca/mtl/base/mtl_base_datatype.h +++ b/ompi/mca/mtl/base/mtl_base_datatype.h @@ -32,7 +32,6 @@ ompi_mtl_datatype_pack(struct ompi_convertor_t *convertor, { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data; ompi_convertor_get_packed_size(convertor, &max_data); @@ -48,8 +47,7 @@ ompi_mtl_datatype_pack(struct ompi_convertor_t *convertor, *freeAfter = false; } - ompi_convertor_pack(convertor, &iov, &iov_count, &max_data, - &free_after); + ompi_convertor_pack( convertor, &iov, &iov_count, &max_data ); *buffer = iov.iov_base; *buffer_len = iov.iov_len; @@ -91,7 +89,6 @@ ompi_mtl_datatype_unpack(struct ompi_convertor_t *convertor, { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data; iov.iov_len = buffer_len; @@ -100,8 +97,7 @@ ompi_mtl_datatype_unpack(struct ompi_convertor_t *convertor, if (max_data > 0 && ompi_convertor_need_buffers(convertor)) { - ompi_convertor_unpack(convertor, &iov, &iov_count, - &max_data, &free_after); + ompi_convertor_unpack(convertor, &iov, &iov_count, &max_data ); free(buffer); } diff --git a/ompi/mca/mtl/mx/mtl_mx_send.c b/ompi/mca/mtl/mx/mtl_mx_send.c index a283b6b7a4..2806ab93db 100644 --- a/ompi/mca/mtl/mx/mtl_mx_send.c +++ b/ompi/mca/mtl/mx/mtl_mx_send.c @@ -50,8 +50,7 @@ ompi_mtl_mx_send(struct mca_mtl_base_module_t* mtl, ret = ompi_mtl_datatype_pack(convertor, &mtl_mx_request.mx_segment[0].segment_ptr, - &length, - &mtl_mx_request.free_after); + &length); mtl_mx_request.mx_segment[0].segment_length = length; @@ -147,8 +146,7 @@ ompi_mtl_mx_isend(struct mca_mtl_base_module_t* mtl, ret = ompi_mtl_datatype_pack(convertor, &mtl_mx_request->mx_segment[0].segment_ptr, - &length, - &mtl_mx_request->free_after); + &length); mtl_mx_request->mx_segment[0].segment_length = length; mtl_mx_request->convertor = convertor; mtl_mx_request->type = OMPI_MTL_MX_ISEND; diff --git a/ompi/mca/mtl/portals/mtl_portals_recv.c b/ompi/mca/mtl/portals/mtl_portals_recv.c index a00fd13bab..b0905f1bd2 100644 --- a/ompi/mca/mtl/portals/mtl_portals_recv.c +++ b/ompi/mca/mtl/portals/mtl_portals_recv.c @@ -103,7 +103,6 @@ ompi_mtl_portals_get_data(ompi_mtl_portals_event_t *recv_event, struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data; ompi_mtl_portals_recv_short_block_t *block = @@ -123,7 +122,7 @@ ompi_mtl_portals_get_data(ompi_mtl_portals_event_t *recv_event, /* pull out the data */ if (iov.iov_len > 0) { ompi_convertor_unpack(convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); } /* if synchronous, return an ack */ diff --git a/ompi/mca/osc/pt2pt/osc_pt2pt_data_move.c b/ompi/mca/osc/pt2pt/osc_pt2pt_data_move.c index 5d7541351c..60c8a119cd 100644 --- a/ompi/mca/osc/pt2pt/osc_pt2pt_data_move.c +++ b/ompi/mca/osc/pt2pt/osc_pt2pt_data_move.c @@ -228,14 +228,13 @@ ompi_osc_pt2pt_sendreq_send(ompi_osc_pt2pt_module_t *module, written_data + sendreq->req_origin_bytes_packed) { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data = sendreq->req_origin_bytes_packed; iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)((unsigned char*) buffer->payload + written_data); ret = ompi_convertor_pack(&sendreq->req_origin_convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); if (ret < 0) { ret = OMPI_ERR_FATAL; goto cleanup; @@ -404,14 +403,13 @@ ompi_osc_pt2pt_replyreq_send(ompi_osc_pt2pt_module_t *module, written_data + replyreq->rep_target_bytes_packed) { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data = replyreq->rep_target_bytes_packed; iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)((unsigned char*) buffer->payload + written_data); ret = ompi_convertor_pack(&replyreq->rep_target_convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); if (ret < 0) { ret = OMPI_ERR_FATAL; goto cleanup; @@ -496,7 +494,6 @@ ompi_osc_pt2pt_sendreq_recv_put(ompi_osc_pt2pt_module_t *module, ompi_convertor_t convertor; struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; ompi_proc_t *proc; @@ -517,8 +514,7 @@ ompi_osc_pt2pt_sendreq_recv_put(ompi_osc_pt2pt_module_t *module, ompi_convertor_unpack(&convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data ); OBJ_DESTRUCT(&convertor); OBJ_RELEASE(datatype); OPAL_THREAD_ADD32(&(module->p2p_num_pending_in), -1); @@ -720,7 +716,6 @@ ompi_osc_pt2pt_replyreq_recv(ompi_osc_pt2pt_module_t *module, struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; iov.iov_len = header->hdr_msg_length; @@ -729,8 +724,7 @@ ompi_osc_pt2pt_replyreq_recv(ompi_osc_pt2pt_module_t *module, ompi_convertor_unpack(&sendreq->req_origin_convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data ); OPAL_THREAD_ADD32(&(sendreq->req_module->p2p_num_pending_out), -1); ompi_osc_pt2pt_sendreq_free(sendreq); diff --git a/ompi/mca/osc/pt2pt/osc_pt2pt_obj_convert.c b/ompi/mca/osc/pt2pt/osc_pt2pt_obj_convert.c index 0b75eceab5..c2698e1a6d 100644 --- a/ompi/mca/osc/pt2pt/osc_pt2pt_obj_convert.c +++ b/ompi/mca/osc/pt2pt/osc_pt2pt_obj_convert.c @@ -48,7 +48,6 @@ ompi_osc_pt2pt_process_op(ompi_osc_pt2pt_module_t *module, ompi_convertor_t convertor; struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; ompi_proc_t *proc; @@ -76,8 +75,7 @@ ompi_osc_pt2pt_process_op(ompi_osc_pt2pt_module_t *module, ompi_convertor_unpack(&convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data); OBJ_DESTRUCT(&convertor); } else { /* reductions other than MPI_REPLACE. Since user-defined diff --git a/ompi/mca/osc/rdma/osc_rdma_data_move.c b/ompi/mca/osc/rdma/osc_rdma_data_move.c index 4c3deaf2c6..50ca0577b5 100644 --- a/ompi/mca/osc/rdma/osc_rdma_data_move.c +++ b/ompi/mca/osc/rdma/osc_rdma_data_move.c @@ -244,14 +244,13 @@ ompi_osc_rdma_sendreq_send(ompi_osc_rdma_module_t *module, written_data + sendreq->req_origin_bytes_packed) { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data = sendreq->req_origin_bytes_packed; iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)((unsigned char*) descriptor->des_src[0].seg_addr.pval + written_data); ret = ompi_convertor_pack(&sendreq->req_origin_convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); if (ret < 0) { ret = OMPI_ERR_FATAL; goto cleanup; @@ -424,14 +423,13 @@ ompi_osc_rdma_replyreq_send(ompi_osc_rdma_module_t *module, written_data + replyreq->rep_target_bytes_packed) { struct iovec iov; uint32_t iov_count = 1; - int32_t free_after; size_t max_data = replyreq->rep_target_bytes_packed; iov.iov_len = max_data; iov.iov_base = (IOVBASE_TYPE*)((unsigned char*) descriptor->des_src[0].seg_addr.pval + written_data); ret = ompi_convertor_pack(&replyreq->rep_target_convertor, &iov, &iov_count, - &max_data, &free_after); + &max_data ); if (ret < 0) { ret = OMPI_ERR_FATAL; goto cleanup; @@ -504,7 +502,6 @@ ompi_osc_rdma_sendreq_recv_put(ompi_osc_rdma_module_t *module, ompi_convertor_t convertor; struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; ompi_proc_t *proc; @@ -525,8 +522,7 @@ ompi_osc_rdma_sendreq_recv_put(ompi_osc_rdma_module_t *module, ompi_convertor_unpack(&convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data ); OBJ_DESTRUCT(&convertor); OBJ_RELEASE(datatype); OPAL_THREAD_ADD32(&(module->p2p_num_pending_in), -1); @@ -728,7 +724,6 @@ ompi_osc_rdma_replyreq_recv(ompi_osc_rdma_module_t *module, struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; iov.iov_len = header->hdr_msg_length; @@ -737,8 +732,7 @@ ompi_osc_rdma_replyreq_recv(ompi_osc_rdma_module_t *module, ompi_convertor_unpack(&sendreq->req_origin_convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data ); OPAL_THREAD_ADD32(&(sendreq->req_module->p2p_num_pending_out), -1); ompi_osc_rdma_sendreq_free(sendreq); diff --git a/ompi/mca/osc/rdma/osc_rdma_obj_convert.c b/ompi/mca/osc/rdma/osc_rdma_obj_convert.c index 0639e69651..813fa93a1f 100644 --- a/ompi/mca/osc/rdma/osc_rdma_obj_convert.c +++ b/ompi/mca/osc/rdma/osc_rdma_obj_convert.c @@ -48,7 +48,6 @@ ompi_osc_rdma_process_op(ompi_osc_rdma_module_t *module, ompi_convertor_t convertor; struct iovec iov; uint32_t iov_count = 1; - int32_t free_after = 0; size_t max_data; ompi_proc_t *proc; @@ -76,8 +75,7 @@ ompi_osc_rdma_process_op(ompi_osc_rdma_module_t *module, ompi_convertor_unpack(&convertor, &iov, &iov_count, - &max_data, - &free_after); + &max_data); OBJ_DESTRUCT(&convertor); } else { /* reductions other than MPI_REPLACE. Since user-defined diff --git a/ompi/mca/pml/base/pml_base_bsend.c b/ompi/mca/pml/base/pml_base_bsend.c index a3e090acb4..39a271598b 100644 --- a/ompi/mca/pml/base/pml_base_bsend.c +++ b/ompi/mca/pml/base/pml_base_bsend.c @@ -199,7 +199,7 @@ int mca_pml_base_bsend_request_start(ompi_request_t* request) struct iovec iov; unsigned int iov_count; size_t max_data; - int rc, freeAfter; + int rc; if(sendreq->req_bytes_packed > 0) { @@ -233,7 +233,7 @@ int mca_pml_base_bsend_request_start(ompi_request_t* request) if((rc = ompi_convertor_pack( &sendreq->req_convertor, &iov, &iov_count, - &max_data, &freeAfter )) < 0) { + &max_data )) < 0) { return OMPI_ERROR; } diff --git a/ompi/mca/pml/cm/pml_cm_sendreq.h b/ompi/mca/pml/cm/pml_cm_sendreq.h index fbde16ecb5..26a1252785 100644 --- a/ompi/mca/pml/cm/pml_cm_sendreq.h +++ b/ompi/mca/pml/cm/pml_cm_sendreq.h @@ -227,7 +227,6 @@ do { \ struct iovec iov; \ unsigned int iov_count; \ size_t max_data; \ - int freeAfter; \ \ if(sendreq->req_count > 0) { \ sendreq->req_buff = \ @@ -241,7 +240,7 @@ do { \ ompi_convertor_pack( &sendreq->req_send.req_base.req_convertor, \ &iov, \ &iov_count, \ - &max_data, &freeAfter); \ + &max_data ); \ ompi_convertor_prepare_for_send( &sendreq->req_send.req_base.req_convertor, MPI_PACKED, \ max_data, sendreq->req_buff ); \ } \ diff --git a/ompi/mca/pml/dr/pml_dr_recvreq.h b/ompi/mca/pml/dr/pml_dr_recvreq.h index 4b9363d7eb..5c035450d0 100644 --- a/ompi/mca/pml/dr/pml_dr_recvreq.h +++ b/ompi/mca/pml/dr/pml_dr_recvreq.h @@ -276,7 +276,6 @@ do { struct iovec iov[MCA_BTL_DES_MAX_SEGMENTS]; \ uint32_t iov_count = 0; \ size_t max_data = bytes_received; \ - int32_t free_after = 0; \ size_t n, offset = seg_offset; \ bool do_csum = mca_pml_dr.enable_csum && \ (request->req_endpoint->bml_endpoint->btl_flags_or & MCA_BTL_FLAGS_NEED_CSUM); \ @@ -300,8 +299,7 @@ do { &(request)->req_recv.req_convertor, \ iov, \ &iov_count, \ - &max_data, \ - &free_after); \ + &max_data); \ bytes_delivered = max_data; \ if(bytes_received && !bytes_delivered) assert(0); \ csum = (do_csum ? \ diff --git a/ompi/mca/pml/dr/pml_dr_sendreq.c b/ompi/mca/pml/dr/pml_dr_sendreq.c index 50dd0a7ae2..904932fd34 100644 --- a/ompi/mca/pml/dr/pml_dr_sendreq.c +++ b/ompi/mca/pml/dr/pml_dr_sendreq.c @@ -375,7 +375,6 @@ int mca_pml_dr_send_request_start_buffered( struct iovec iov; unsigned int iov_count; size_t max_data; - int32_t free_after; int rc; uint32_t csum; bool do_csum = mca_pml_dr.enable_csum && @@ -399,8 +398,7 @@ int mca_pml_dr_send_request_start_buffered( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } @@ -432,8 +430,7 @@ int mca_pml_dr_send_request_start_buffered( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } @@ -493,7 +490,6 @@ int mca_pml_dr_send_request_start_copy( struct iovec iov; unsigned int iov_count; size_t max_data; - int32_t free_after; int rc; bool do_csum = mca_pml_dr.enable_csum && (bml_btl->btl_flags & MCA_BTL_FLAGS_NEED_CSUM); @@ -516,8 +512,7 @@ int mca_pml_dr_send_request_start_copy( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } diff --git a/ompi/mca/pml/ob1/pml_ob1_recvreq.h b/ompi/mca/pml/ob1/pml_ob1_recvreq.h index c0b8e173c4..a531064d7a 100644 --- a/ompi/mca/pml/ob1/pml_ob1_recvreq.h +++ b/ompi/mca/pml/ob1/pml_ob1_recvreq.h @@ -284,7 +284,6 @@ do { struct iovec iov[MCA_BTL_DES_MAX_SEGMENTS]; \ uint32_t iov_count = 0; \ size_t max_data = bytes_received; \ - int32_t free_after = 0; \ size_t n, offset = seg_offset; \ mca_btl_base_segment_t* segment = segments; \ \ @@ -305,8 +304,7 @@ do { ompi_convertor_unpack( &(request)->req_recv.req_convertor, \ iov, \ &iov_count, \ - &max_data, \ - &free_after); \ + &max_data ); \ bytes_delivered = max_data; \ } \ } while (0) diff --git a/ompi/mca/pml/ob1/pml_ob1_sendreq.c b/ompi/mca/pml/ob1/pml_ob1_sendreq.c index f2a4363345..563a345282 100644 --- a/ompi/mca/pml/ob1/pml_ob1_sendreq.c +++ b/ompi/mca/pml/ob1/pml_ob1_sendreq.c @@ -360,7 +360,6 @@ int mca_pml_ob1_send_request_start_buffered( struct iovec iov; unsigned int iov_count; size_t max_data; - int32_t free_after; int rc; /* allocate descriptor */ @@ -380,8 +379,7 @@ int mca_pml_ob1_send_request_start_buffered( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } @@ -432,8 +430,7 @@ int mca_pml_ob1_send_request_start_buffered( if((rc = ompi_convertor_pack( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } @@ -474,7 +471,6 @@ int mca_pml_ob1_send_request_start_copy( struct iovec iov; unsigned int iov_count; size_t max_data; - int32_t free_after; int rc; /* allocate descriptor */ @@ -499,8 +495,7 @@ int mca_pml_ob1_send_request_start_copy( &sendreq->req_send.req_convertor, &iov, &iov_count, - &max_data, - &free_after)) < 0) { + &max_data)) < 0) { mca_bml_base_free(bml_btl, descriptor); return rc; } diff --git a/ompi/mpi/c/pack.c b/ompi/mpi/c/pack.c index d841e058ca..71575edde2 100644 --- a/ompi/mpi/c/pack.c +++ b/ompi/mpi/c/pack.c @@ -38,7 +38,7 @@ static const char FUNC_NAME[] = "MPI_Pack"; int MPI_Pack(void *inbuf, int incount, MPI_Datatype datatype, void *outbuf, int outsize, int *position, MPI_Comm comm) { - int rc, freeAfter; + int rc; ompi_convertor_t local_convertor; struct iovec invec; unsigned int iov_count; @@ -77,7 +77,7 @@ int MPI_Pack(void *inbuf, int incount, MPI_Datatype datatype, /* Do the actual packing */ iov_count = 1; - rc = ompi_convertor_pack( &local_convertor, &invec, &iov_count, &size, &freeAfter ); + rc = ompi_convertor_pack( &local_convertor, &invec, &iov_count, &size ); *position += size; OBJ_DESTRUCT( &local_convertor ); diff --git a/ompi/mpi/c/pack_external.c b/ompi/mpi/c/pack_external.c index ab1d08e672..db544eb707 100644 --- a/ompi/mpi/c/pack_external.c +++ b/ompi/mpi/c/pack_external.c @@ -37,7 +37,7 @@ int MPI_Pack_external(char *datarep, void *inbuf, int incount, MPI_Datatype datatype, void *outbuf, MPI_Aint outsize, MPI_Aint *position) { - int rc, freeAfter; + int rc; ompi_convertor_t local_convertor; struct iovec invec; unsigned int iov_count; @@ -69,7 +69,7 @@ int MPI_Pack_external(char *datarep, void *inbuf, int incount, /* Check for truncation */ ompi_convertor_get_packed_size( &local_convertor, &size ); - if( (*position + size) > (unsigned int)outsize ) { /* we can cast as we already checked for < 0 */ + if( (*position + size) > (size_t)outsize ) { /* we can cast as we already checked for < 0 */ OBJ_DESTRUCT( &local_convertor ); return OMPI_ERRHANDLER_INVOKE( MPI_COMM_WORLD, MPI_ERR_TRUNCATE, FUNC_NAME ); } @@ -80,7 +80,7 @@ int MPI_Pack_external(char *datarep, void *inbuf, int incount, /* Do the actual packing */ iov_count = 1; - rc = ompi_convertor_pack( &local_convertor, &invec, &iov_count, &size, &freeAfter ); + rc = ompi_convertor_pack( &local_convertor, &invec, &iov_count, &size ); *position += size; OBJ_DESTRUCT( &local_convertor ); diff --git a/ompi/mpi/c/sendrecv_replace.c b/ompi/mpi/c/sendrecv_replace.c index 7a67f24f61..ffd1e9e7db 100644 --- a/ompi/mpi/c/sendrecv_replace.c +++ b/ompi/mpi/c/sendrecv_replace.c @@ -70,7 +70,6 @@ int MPI_Sendrecv_replace(void * buf, int count, MPI_Datatype datatype, unsigned char recv_data[2048]; size_t packed_size, max_data; uint32_t iov_count; - int free_after; ompi_status_public_t recv_status; ompi_proc_t* proc = ompi_comm_peer_lookup(comm,dest); if(proc == NULL) { @@ -108,7 +107,7 @@ int MPI_Sendrecv_replace(void * buf, int count, MPI_Datatype datatype, iov.iov_len = recv_status._count; iov_count = 1; max_data = recv_status._count; - ompi_convertor_unpack(&convertor, &iov, &iov_count, &max_data, &free_after); + ompi_convertor_unpack(&convertor, &iov, &iov_count, &max_data ); /* return status to user */ if(status != MPI_STATUS_IGNORE) { diff --git a/ompi/mpi/c/unpack.c b/ompi/mpi/c/unpack.c index 4e8b93879c..145487d45e 100644 --- a/ompi/mpi/c/unpack.c +++ b/ompi/mpi/c/unpack.c @@ -37,7 +37,7 @@ int MPI_Unpack(void *inbuf, int insize, int *position, void *outbuf, int outcount, MPI_Datatype datatype, MPI_Comm comm) { - int rc = 1, freeAfter; + int rc = 1; ompi_convertor_t local_convertor; struct iovec outvec; unsigned int iov_count; @@ -81,8 +81,7 @@ int MPI_Unpack(void *inbuf, int insize, int *position, /* Do the actual unpacking */ iov_count = 1; - rc = ompi_convertor_unpack( &local_convertor, &outvec, &iov_count, - &size, &freeAfter ); + rc = ompi_convertor_unpack( &local_convertor, &outvec, &iov_count, &size ); *position += size; OBJ_DESTRUCT( &local_convertor ); diff --git a/ompi/mpi/c/unpack_external.c b/ompi/mpi/c/unpack_external.c index 2a1679aa84..be6a5bd8e6 100644 --- a/ompi/mpi/c/unpack_external.c +++ b/ompi/mpi/c/unpack_external.c @@ -36,7 +36,7 @@ int MPI_Unpack_external (char *datarep, void *inbuf, MPI_Aint insize, MPI_Aint *position, void *outbuf, int outcount, MPI_Datatype datatype) { - int rc, freeAfter; + int rc; ompi_convertor_t local_convertor; struct iovec outvec; unsigned int iov_count; @@ -72,7 +72,7 @@ int MPI_Unpack_external (char *datarep, void *inbuf, MPI_Aint insize, /* Do the actual unpacking */ iov_count = 1; - rc = ompi_convertor_unpack( &local_convertor, &outvec, &iov_count, &size, &freeAfter ); + rc = ompi_convertor_unpack( &local_convertor, &outvec, &iov_count, &size ); *position += size; OBJ_DESTRUCT( &local_convertor );