1
1

Merge pull request #1758 from hjelmn/ob1_fixes

pml/ob1: bug fixes
Этот коммит содержится в:
Nathan Hjelm 2016-06-07 11:18:55 -06:00
родитель 0efb1b5d1f 5d0b4679ea
Коммит 3ddf3ccbf3

Просмотреть файл

@ -13,7 +13,7 @@
* Copyright (c) 2008 UT-Battelle, LLC. All rights reserved. * Copyright (c) 2008 UT-Battelle, LLC. All rights reserved.
* Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012 NVIDIA Corporation. All rights reserved. * Copyright (c) 2012 NVIDIA Corporation. All rights reserved.
* Copyright (c) 2012-2015 Los Alamos National Security, LLC. All rights * Copyright (c) 2012-2016 Los Alamos National Security, LLC. All rights
* reserved. * reserved.
* Copyright (c) 2015 Cisco Systems, Inc. All rights reserved. * Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
@ -495,9 +495,6 @@ int mca_pml_ob1_send_request_start_copy( mca_pml_ob1_send_request_t* sendreq,
if( OPAL_LIKELY(OMPI_SUCCESS == rc) ) { if( OPAL_LIKELY(OMPI_SUCCESS == rc) ) {
/* signal request completion */ /* signal request completion */
send_request_pml_complete(sendreq); send_request_pml_complete(sendreq);
/* check for pending requests */
MCA_PML_OB1_PROGRESS_PENDING(bml_btl);
return OMPI_SUCCESS; return OMPI_SUCCESS;
} }
@ -688,9 +685,6 @@ int mca_pml_ob1_send_request_start_rdma( mca_pml_ob1_send_request_t* sendreq,
frag->cbfunc = mca_pml_ob1_rget_completion; frag->cbfunc = mca_pml_ob1_rget_completion;
/* do not store the local handle in the fragment. it will be released by mca_pml_ob1_free_rdma_resources */ /* do not store the local handle in the fragment. it will be released by mca_pml_ob1_free_rdma_resources */
/* save the fragment for get->put fallback */
sendreq->rdma_frag = frag;
reg_size = bml_btl->btl->btl_registration_handle_size; reg_size = bml_btl->btl->btl_registration_handle_size;
/* allocate space for get hdr + segment list */ /* allocate space for get hdr + segment list */
@ -699,9 +693,13 @@ int mca_pml_ob1_send_request_start_rdma( mca_pml_ob1_send_request_t* sendreq,
MCA_BTL_DES_FLAGS_SIGNAL); MCA_BTL_DES_FLAGS_SIGNAL);
if( OPAL_UNLIKELY(NULL == des) ) { if( OPAL_UNLIKELY(NULL == des) ) {
/* NTH: no need to reset the converter here. it will be reset before it is retried */ /* NTH: no need to reset the converter here. it will be reset before it is retried */
MCA_PML_OB1_RDMA_FRAG_RETURN(frag);
return OMPI_ERR_OUT_OF_RESOURCE; return OMPI_ERR_OUT_OF_RESOURCE;
} }
/* save the fragment for get->put fallback */
sendreq->rdma_frag = frag;
/* build match header */ /* build match header */
hdr = (mca_pml_ob1_rget_hdr_t *) des->des_segments->seg_addr.pval; hdr = (mca_pml_ob1_rget_hdr_t *) des->des_segments->seg_addr.pval;
/* TODO -- Add support for multiple segments for get */ /* TODO -- Add support for multiple segments for get */