1
1

if all else fails in prepare_src,, pack

init the rdma_pending list in ob1

This commit was SVN r7366.
Этот коммит содержится в:
Galen Shipman 2005-09-14 04:41:33 +00:00
родитель 940a2494a2
Коммит f0b1ea52bc
3 изменённых файлов: 7 добавлений и 12 удалений

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

@ -379,16 +379,14 @@ mca_btl_base_descriptor_t* mca_btl_mvapi_prepare_src(
return &frag->base;
} else if(max_data + reserve <= mvapi_btl->super.btl_max_send_size) {
/** if the data fits in the max limit and we aren't told to pinn then we
simply pack, if the data is non contiguous then we pack **/
} else {
MCA_BTL_IB_FRAG_ALLOC_MAX(btl, frag, rc);
if(NULL == frag) {
return NULL;
}
if(max_data + reserve > frag->size){
max_data = frag->size - reserve;
if(max_data + reserve > btl->btl_max_send_size){
max_data = btl->btl_max_send_size - reserve;
}
iov.iov_len = max_data;
iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve;

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

@ -379,18 +379,14 @@ mca_btl_base_descriptor_t* mca_btl_openib_prepare_src(
return &frag->base;
}
/** if the data fits in the max limit and we aren't told to pinn then we
simply pack, if the data is non contiguous then we pack **/
else if(max_data + reserve <= openib_btl->super.btl_max_send_size) {
} else {
MCA_BTL_IB_FRAG_ALLOC_MAX(btl, frag, rc);
if(NULL == frag) {
return NULL;
}
if(max_data + reserve > frag->size){
max_data = frag->size - reserve;
if(max_data + reserve > btl->btl_max_send_size){
max_data = btl->btl_max_send_size - reserve;
}
iov.iov_len = max_data;
iov.iov_base = (unsigned char*) frag->segment.seg_addr.pval + reserve;

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

@ -145,6 +145,7 @@ int mca_pml_ob1_component_open(void)
OBJ_CONSTRUCT(&mca_pml_ob1.send_pending, opal_list_t);
OBJ_CONSTRUCT(&mca_pml_ob1.recv_pending, opal_list_t);
OBJ_CONSTRUCT(&mca_pml_ob1.acks_pending, opal_list_t);
OBJ_CONSTRUCT(&mca_pml_ob1.rdma_pending, opal_list_t);
mca_base_param_register_int("mpi", NULL, "leave_pinned", "leave_pinned", 0);
param = mca_base_param_find("mpi", NULL, "leave_pinned");