diff --git a/ompi/mca/mtl/portals4/mtl_portals4.c b/ompi/mca/mtl/portals4/mtl_portals4.c index a18723b5ec..004d35359d 100644 --- a/ompi/mca/mtl/portals4/mtl_portals4.c +++ b/ompi/mca/mtl/portals4/mtl_portals4.c @@ -50,7 +50,7 @@ mca_mtl_portals4_module_t ompi_mtl_portals4 = { ompi_mtl_portals4_irecv, ompi_mtl_portals4_iprobe, - NULL, /* cancel */ + ompi_mtl_portals4_cancel, NULL, /* add_comm */ NULL /* del_comm */ } @@ -198,6 +198,7 @@ ompi_mtl_portals4_progress(void) opal_output_verbose(1, ompi_mtl_base_output, "Unexpected auto unlink event"); break; + case PTL_EVENT_LINK: case PTL_EVENT_GET_OVERFLOW: case PTL_EVENT_FETCH_ATOMIC: case PTL_EVENT_FETCH_ATOMIC_OVERFLOW: diff --git a/ompi/mca/mtl/portals4/mtl_portals4_component.c b/ompi/mca/mtl/portals4/mtl_portals4_component.c index 032be2fd8f..20bc8549c8 100644 --- a/ompi/mca/mtl/portals4/mtl_portals4_component.c +++ b/ompi/mca/mtl/portals4/mtl_portals4_component.c @@ -31,8 +31,9 @@ static int ompi_mtl_portals4_component_open(void); static int ompi_mtl_portals4_component_close(void); -static mca_mtl_base_module_t* ompi_mtl_portals4_component_init( - bool enable_progress_threads, bool enable_mpi_threads); +static mca_mtl_base_module_t* +ompi_mtl_portals4_component_init(bool enable_progress_threads, + bool enable_mpi_threads); OMPI_MODULE_DECLSPEC extern mca_mtl_base_component_2_0_0_t mca_mtl_portals4_component; @@ -262,11 +263,17 @@ ompi_mtl_portals4_component_init(bool enable_progress_threads, me.ct_handle = PTL_CT_NONE; me.min_free = 0; me.uid = PTL_UID_ANY; - me.options = PTL_ME_OP_PUT | PTL_ME_ACK_DISABLE | PTL_ME_EVENT_COMM_DISABLE | PTL_ME_EVENT_UNLINK_DISABLE; + me.options = PTL_ME_OP_PUT | + PTL_ME_ACK_DISABLE | + PTL_ME_EVENT_LINK_DISABLE | + PTL_ME_EVENT_COMM_DISABLE | + PTL_ME_EVENT_UNLINK_DISABLE; me.match_id.phys.nid = PTL_NID_ANY; me.match_id.phys.pid = PTL_PID_ANY; me.match_bits = MTL_PORTALS4_LONG_MSG; - me.ignore_bits = MTL_PORTALS4_CONTEXT_MASK | MTL_PORTALS4_SOURCE_MASK | MTL_PORTALS4_TAG_MASK; + me.ignore_bits = MTL_PORTALS4_CONTEXT_MASK | + MTL_PORTALS4_SOURCE_MASK | + MTL_PORTALS4_TAG_MASK; ret = PtlMEAppend(ompi_mtl_portals4.ni_h, ompi_mtl_portals4.send_idx, &me, diff --git a/ompi/mca/mtl/portals4/mtl_portals4_recv.c b/ompi/mca/mtl/portals4/mtl_portals4_recv.c index aa8c89459e..c8301195d9 100644 --- a/ompi/mca/mtl/portals4/mtl_portals4_recv.c +++ b/ompi/mca/mtl/portals4/mtl_portals4_recv.c @@ -339,9 +339,6 @@ ompi_mtl_portals4_irecv(struct mca_mtl_base_module_t* mtl, ret = ompi_mtl_datatype_recv_buf(convertor, &start, &length, &free_after); if (OMPI_SUCCESS != ret) { - opal_output_verbose(1, ompi_mtl_base_output, - "%s:%d: PtlMEAppend failed: %d", - __FILE__, __LINE__, ret); return ret; } @@ -357,17 +354,21 @@ ompi_mtl_portals4_irecv(struct mca_mtl_base_module_t* mtl, ptl_request->super.super.ompi_req->req_status.MPI_ERROR = OMPI_SUCCESS; OPAL_OUTPUT_VERBOSE((50, ompi_mtl_base_output, - "Recv %d from %x,%x of length %d (0x%lx, 0x%lx)\n", + "Recv %d from %x,%x of length %d (0x%lx, 0x%lx, 0x%lx)\n", ptl_request->opcount, remote_proc.phys.nid, remote_proc.phys.pid, - (int)length, match_bits, ignore_bits)); + (int)length, match_bits, ignore_bits, (unsigned long) ptl_request)); me.start = start; me.length = length; me.ct_handle = PTL_CT_NONE; me.min_free = 0; me.uid = PTL_UID_ANY; - me.options = PTL_ME_OP_PUT | PTL_ME_USE_ONCE | PTL_ME_EVENT_UNLINK_DISABLE; + me.options = + PTL_ME_OP_PUT | + PTL_ME_USE_ONCE | + PTL_ME_EVENT_LINK_DISABLE | /* BWB: FIX ME */ + PTL_ME_EVENT_UNLINK_DISABLE; me.match_id = remote_proc; me.match_bits = match_bits; me.ignore_bits = ignore_bits; diff --git a/ompi/mca/mtl/portals4/mtl_portals4_recv_short.c b/ompi/mca/mtl/portals4/mtl_portals4_recv_short.c index 6bc86a80a8..dfa3631db1 100644 --- a/ompi/mca/mtl/portals4/mtl_portals4_recv_short.c +++ b/ompi/mca/mtl/portals4/mtl_portals4_recv_short.c @@ -110,9 +110,15 @@ ompi_mtl_portals4_activate_block(ompi_mtl_portals4_recv_short_block_t *block) me.ct_handle = PTL_CT_NONE; me.min_free = block->mtl->eager_limit; me.uid = PTL_UID_ANY; - me.options = PTL_ME_OP_PUT | PTL_ME_MANAGE_LOCAL | PTL_ME_NO_TRUNCATE | - PTL_ME_MAY_ALIGN | PTL_ME_ACK_DISABLE; -#if OPAL_ENABLE_DEBUG + me.options = + PTL_ME_OP_PUT | + PTL_ME_EVENT_LINK_DISABLE | + PTL_ME_MANAGE_LOCAL | + PTL_ME_NO_TRUNCATE | + PTL_ME_MAY_ALIGN | + PTL_ME_EVENT_UNLINK_DISABLE | + PTL_ME_ACK_DISABLE; +#if !OPAL_ENABLE_DEBUG me.options |= PTL_ME_EVENT_COMM_DISABLE; #endif me.match_id.phys.nid = PTL_NID_ANY; diff --git a/ompi/mca/mtl/portals4/mtl_portals4_send.c b/ompi/mca/mtl/portals4/mtl_portals4_send.c index a72f105dc7..39616a3c8e 100644 --- a/ompi/mca/mtl/portals4/mtl_portals4_send.c +++ b/ompi/mca/mtl/portals4/mtl_portals4_send.c @@ -187,7 +187,11 @@ ompi_mtl_portals4_sync_isend(void *start, int length, int contextid, int tag, me.ct_handle = PTL_CT_NONE; me.min_free = 0; me.uid = PTL_UID_ANY; - me.options = PTL_ME_OP_PUT | PTL_ME_USE_ONCE | PTL_ME_EVENT_UNLINK_DISABLE; + me.options = + PTL_ME_OP_PUT | + PTL_ME_USE_ONCE | + PTL_ME_EVENT_LINK_DISABLE | + PTL_ME_EVENT_UNLINK_DISABLE; me.match_id = endpoint->ptl_proc; me.match_bits = hdr_data; me.ignore_bits = 0; @@ -273,7 +277,11 @@ ompi_mtl_portals4_long_isend(void *start, int length, int contextid, int tag, me.ct_handle = PTL_CT_NONE; me.min_free = 0; me.uid = PTL_UID_ANY; - me.options = PTL_ME_OP_GET | PTL_ME_USE_ONCE | PTL_ME_EVENT_UNLINK_DISABLE; + me.options = + PTL_ME_OP_GET | + PTL_ME_USE_ONCE | + PTL_ME_EVENT_LINK_DISABLE | + PTL_ME_EVENT_UNLINK_DISABLE; me.match_id = endpoint->ptl_proc; me.match_bits = hdr_data; me.ignore_bits = 0;