Update the self BTL to fulfill the requirements for #1713.
This commit was SVN r20152.
Этот коммит содержится в:
родитель
7d404d238d
Коммит
209b844017
@ -132,18 +132,18 @@ mca_btl_base_descriptor_t* mca_btl_self_alloc(
|
||||
size_t size,
|
||||
uint32_t flags)
|
||||
{
|
||||
mca_btl_self_frag_t* frag;
|
||||
mca_btl_self_frag_t* frag = NULL;
|
||||
int rc;
|
||||
if(size <= mca_btl_self.btl_eager_limit) {
|
||||
MCA_BTL_SELF_FRAG_ALLOC_EAGER(frag,rc);
|
||||
frag->segment.seg_len = size;
|
||||
} else if (size <= btl->btl_max_send_size) {
|
||||
MCA_BTL_SELF_FRAG_ALLOC_SEND(frag,rc);
|
||||
frag->segment.seg_len = size;
|
||||
} else {
|
||||
}
|
||||
if( OPAL_UNLIKELY(NULL == frag) ) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
frag->segment.seg_len = size;
|
||||
frag->base.des_flags = flags;
|
||||
frag->base.des_src = &(frag->segment);
|
||||
frag->base.des_src_cnt = 1;
|
||||
@ -204,7 +204,7 @@ mca_btl_self_prepare_src( struct mca_btl_base_module_t* btl,
|
||||
reserve != 0 ) {
|
||||
|
||||
MCA_BTL_SELF_FRAG_ALLOC_SEND(frag, rc);
|
||||
if(NULL == frag) {
|
||||
if(OPAL_UNLIKELY(NULL == frag)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@ -224,7 +224,7 @@ mca_btl_self_prepare_src( struct mca_btl_base_module_t* btl,
|
||||
*size = max_data;
|
||||
} else {
|
||||
MCA_BTL_SELF_FRAG_ALLOC_RDMA(frag, rc);
|
||||
if(NULL == frag) {
|
||||
if(OPAL_UNLIKELY(NULL == frag)) {
|
||||
return NULL;
|
||||
}
|
||||
iov.iov_len = max_data;
|
||||
@ -265,7 +265,7 @@ mca_btl_self_prepare_dst( struct mca_btl_base_module_t* btl,
|
||||
int rc;
|
||||
|
||||
MCA_BTL_SELF_FRAG_ALLOC_RDMA(frag, rc);
|
||||
if(NULL == frag) {
|
||||
if(OPAL_UNLIKELY(NULL == frag)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
||||
* University Research and Technology
|
||||
* Corporation. All rights reserved.
|
||||
* Copyright (c) 2004-2006 The University of Tennessee and The University
|
||||
* Copyright (c) 2004-2008 The University of Tennessee and The University
|
||||
* of Tennessee Research Foundation. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
@ -47,7 +47,7 @@ OBJ_CLASS_DECLARATION(mca_btl_self_frag_rdma_t);
|
||||
#define MCA_BTL_SELF_FRAG_ALLOC_EAGER(frag, rc) \
|
||||
{ \
|
||||
ompi_free_list_item_t* item; \
|
||||
OMPI_FREE_LIST_WAIT(&mca_btl_self_component.self_frags_eager, item, rc); \
|
||||
OMPI_FREE_LIST_GET(&mca_btl_self_component.self_frags_eager, item, rc); \
|
||||
frag = (mca_btl_self_frag_t*)item; \
|
||||
}
|
||||
|
||||
@ -61,7 +61,7 @@ OBJ_CLASS_DECLARATION(mca_btl_self_frag_rdma_t);
|
||||
#define MCA_BTL_SELF_FRAG_ALLOC_SEND(frag, rc) \
|
||||
{ \
|
||||
ompi_free_list_item_t* item; \
|
||||
OMPI_FREE_LIST_WAIT(&mca_btl_self_component.self_frags_send, item, rc); \
|
||||
OMPI_FREE_LIST_GET(&mca_btl_self_component.self_frags_send, item, rc); \
|
||||
frag = (mca_btl_self_frag_t*)item; \
|
||||
}
|
||||
|
||||
@ -75,7 +75,7 @@ OBJ_CLASS_DECLARATION(mca_btl_self_frag_rdma_t);
|
||||
#define MCA_BTL_SELF_FRAG_ALLOC_RDMA(frag, rc) \
|
||||
{ \
|
||||
ompi_free_list_item_t* item; \
|
||||
OMPI_FREE_LIST_WAIT(&mca_btl_self_component.self_frags_rdma, item, rc); \
|
||||
OMPI_FREE_LIST_GET(&mca_btl_self_component.self_frags_rdma, item, rc); \
|
||||
frag = (mca_btl_self_frag_t*)item; \
|
||||
}
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user