diff --git a/src/mca/ptl/mx/ptl_mx.c b/src/mca/ptl/mx/ptl_mx.c index b1b7e46f9a..7148fdd0a2 100644 --- a/src/mca/ptl/mx/ptl_mx.c +++ b/src/mca/ptl/mx/ptl_mx.c @@ -216,6 +216,7 @@ int mca_ptl_mx_send( /* first fragment - need to try and match at the receiver */ if(offset == 0) { hdr->hdr_common.hdr_flags = flags; + hdr->hdr_match.hdr_contextid = sendreq->req_base.req_comm->c_contextid; hdr->hdr_match.hdr_src = sendreq->req_base.req_comm->c_my_rank; hdr->hdr_match.hdr_dst = sendreq->req_base.req_peer; hdr->hdr_match.hdr_tag = sendreq->req_base.req_tag; diff --git a/src/mca/ptl/mx/ptl_mx_module.c b/src/mca/ptl/mx/ptl_mx_module.c index 62c7bca886..02bf79eea7 100644 --- a/src/mca/ptl/mx/ptl_mx_module.c +++ b/src/mca/ptl/mx/ptl_mx_module.c @@ -198,6 +198,7 @@ static void mca_ptl_mx_match(void* context, uint64_t match_value, int size) frag->frag_size = size; frag->frag_recv.frag_request = request; + frag->frag_recv.frag_base.frag_peer = NULL; frag->frag_recv.frag_base.frag_owner = &ptl->super; frag->frag_recv.frag_base.frag_size = frag->frag_size; frag->frag_recv.frag_base.frag_header.hdr_common.hdr_type = diff --git a/src/mca/ptl/mx/ptl_mx_recvfrag.c b/src/mca/ptl/mx/ptl_mx_recvfrag.c index b4ca7c904f..c5dccb3e1c 100644 --- a/src/mca/ptl/mx/ptl_mx_recvfrag.c +++ b/src/mca/ptl/mx/ptl_mx_recvfrag.c @@ -33,7 +33,6 @@ OBJ_CLASS_INSTANCE( static void mca_ptl_mx_recv_frag_construct(mca_ptl_mx_recv_frag_t* frag) { /* one time initialization */ - frag->frag_recv.frag_base.frag_peer = (mca_ptl_base_peer_t*)0x01; frag->frag_segments[0].segment_ptr = &frag->frag_recv.frag_base.frag_header; frag->frag_segments[0].segment_length = sizeof(frag->frag_recv.frag_base.frag_header); }