Commit bf3c7d41 authored by Halim Amer's avatar Halim Amer Committed by Kenneth Raffenetti
Browse files

Fix handle leaks when canceling LMT send requests



If the destination of a LMT nonblocking send, which
follows a rendez-vous protocol, receives the RTS packet to the
unexpected queue followed by a cancelation request, the request in
the unexpected queue never gets freed. To solve the issue, we
forcefully free the rendez-vous request by adding an additional
request release operation. Refs #287
Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>
parent 443f495c
......@@ -252,6 +252,10 @@ int MPIDI_CH3_PktHandler_CancelSendReq( MPIDI_VC_t *vc, MPIDI_CH3_Pkt_t *pkt,
{
MPIU_Free(rreq->dev.tmpbuf);
}
if (MPIDI_Request_get_msg_type(rreq) == MPIDI_REQUEST_RNDV_MSG)
{
MPID_Request_release(rreq);
}
MPID_Request_release(rreq);
ack = TRUE;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment