Whe don't need to register zero sized frags.
This commit was SVN r10519.
Этот коммит содержится в:
@ -615,7 +615,7 @@ mca_btl_base_module_t** mca_btl_openib_component_init(int *num_btl_modules,
|
|||||||
mca_btl_openib_component.ib_free_list_num,
|
mca_btl_openib_component.ib_free_list_num,
|
||||||
mca_btl_openib_component.ib_free_list_max,
|
mca_btl_openib_component.ib_free_list_max,
|
||||||
mca_btl_openib_component.ib_free_list_inc,
|
mca_btl_openib_component.ib_free_list_inc,
|
||||||
openib_btl->super.btl_mpool);
|
NULL);
|
||||||
|
|
||||||
orte_pointer_array_init(&openib_btl->eager_rdma_buffers,
|
orte_pointer_array_init(&openib_btl->eager_rdma_buffers,
|
||||||
mca_btl_openib_component.max_eager_rdma,
|
mca_btl_openib_component.max_eager_rdma,
|
||||||
|
@ -30,12 +30,14 @@ static void mca_btl_openib_frag_common_constructor( mca_btl_openib_frag_t* frag)
|
|||||||
frag->segment.seg_addr.pval = ((unsigned char* )frag->hdr) + sizeof(mca_btl_openib_header_t);
|
frag->segment.seg_addr.pval = ((unsigned char* )frag->hdr) + sizeof(mca_btl_openib_header_t);
|
||||||
/* init the segment address to start after the btl header */
|
/* init the segment address to start after the btl header */
|
||||||
|
|
||||||
|
if(registration) {
|
||||||
frag->mr = registration->mr;
|
frag->mr = registration->mr;
|
||||||
frag->segment.seg_len = frag->size;
|
|
||||||
frag->segment.seg_key.key32[0] = (uint32_t) frag->mr->lkey;
|
frag->segment.seg_key.key32[0] = (uint32_t) frag->mr->lkey;
|
||||||
|
frag->sg_entry.lkey = frag->mr->lkey;
|
||||||
|
}
|
||||||
|
frag->segment.seg_len = frag->size;
|
||||||
frag->sg_entry.addr = (unsigned long) frag->hdr;
|
frag->sg_entry.addr = (unsigned long) frag->hdr;
|
||||||
frag->sg_entry.length = frag->size;
|
frag->sg_entry.length = frag->size;
|
||||||
frag->sg_entry.lkey = frag->mr->lkey;
|
|
||||||
frag->base.des_flags = 0;
|
frag->base.des_flags = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Ссылка в новой задаче
Block a user