Skip to content
This repository was archived by the owner on Sep 30, 2022. It is now read-only.

Commit 07fd547

Browse files
committed
mtl/portals4: Modifications concerning the short message
1 parent e06a77e commit 07fd547

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

ompi/mca/mtl/portals4/mtl_portals4_recv_short.c

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ ompi_mtl_portals4_recv_block_progress(ptl_event_t *ev,
8686
break;
8787

8888
case PTL_EVENT_AUTO_UNLINK:
89+
block->me_h = PTL_INVALID_HANDLE;
8990
#if OMPI_ENABLE_THREAD_MULTIPLE
9091
OPAL_THREAD_LOCK(&ompi_mtl_portals4.short_block_mutex);
9192
switch (block->status) {
@@ -211,6 +212,7 @@ ompi_mtl_portals4_activate_block(ompi_mtl_portals4_recv_short_block_t *block)
211212
me.uid = ompi_mtl_portals4.uid;
212213
me.options =
213214
PTL_ME_OP_PUT |
215+
PTL_ME_EVENT_COMM_DISABLE |
214216
PTL_ME_MANAGE_LOCAL |
215217
PTL_ME_MAY_ALIGN;
216218
if (ompi_mtl_portals4.use_logical) {
@@ -278,6 +280,7 @@ ompi_mtl_portals4_recv_short_fini(void)
278280
ompi_mtl_portals4_recv_short_block_t *block =
279281
(ompi_mtl_portals4_recv_short_block_t*) item;
280282
ret = ompi_mtl_portals4_recv_short_block_free(block);
283+
ompi_mtl_portals4.active_recv_short_blocks--;
281284
}
282285
OPAL_THREAD_UNLOCK(&ompi_mtl_portals4.short_block_mutex);
283286

@@ -295,10 +298,17 @@ ompi_mtl_portals4_recv_short_link(int count)
295298
if (active < count) {
296299
for (i = 0 ; i < (count - active) ; ++i) {
297300
ompi_mtl_portals4_recv_short_block_t *block =
298-
ompi_mtl_portals4_recv_short_block_alloc(false);
301+
ompi_mtl_portals4_recv_short_block_alloc(true);
299302
if (NULL == block) {
300303
return OMPI_ERR_OUT_OF_RESOURCE;
301304
}
305+
OPAL_THREAD_LOCK(&ompi_mtl_portals4.short_block_mutex);
306+
opal_list_append(&ompi_mtl_portals4.recv_short_blocks,
307+
&block->base);
308+
OPAL_OUTPUT_VERBOSE((10, ompi_mtl_base_framework.framework_output,
309+
"recv_short_link: total=%d active=%d",
310+
(int) opal_list_get_size(&ompi_mtl_portals4.recv_short_blocks), ompi_mtl_portals4.active_recv_short_blocks));
311+
OPAL_THREAD_UNLOCK(&ompi_mtl_portals4.short_block_mutex);
302312
ret = ompi_mtl_portals4_activate_block(block);
303313
}
304314
}

0 commit comments

Comments
 (0)