From a106b6aa7f9e375f952c0f65fe5bc888cb817a38 Mon Sep 17 00:00:00 2001 From: Yossi Itigin Date: Mon, 14 Sep 2020 13:34:54 +0300 Subject: [PATCH] UCP/RDNV: Add debug info for rndv-truncated --- src/ucp/tag/rndv.c | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/ucp/tag/rndv.c b/src/ucp/tag/rndv.c index 994f975479e..2156b65fe08 100644 --- a/src/ucp/tag/rndv.c +++ b/src/ucp/tag/rndv.c @@ -520,10 +520,10 @@ static void ucp_rndv_send_frag_atp(ucp_request_t *fsreq, uintptr_t remote_reques static void ucp_rndv_zcopy_recv_req_complete(ucp_worker_h worker, ucp_request_t *req, - ucs_status_t status) + ucs_status_t status, const char *state) { ucp_request_recv_buffer_dereg(req); - ucp_request_complete_tag_recv(worker, req, status, "rndv_zcopy"); + ucp_request_complete_tag_recv(worker, req, status, state); } static void ucp_rndv_complete_rma_get_zcopy(ucp_request_t *rndv_req, @@ -557,7 +557,7 @@ static void ucp_rndv_complete_rma_get_zcopy(ucp_request_t *rndv_req, ucp_request_put(rndv_req); } - ucp_rndv_zcopy_recv_req_complete(worker, rreq, status); + ucp_rndv_zcopy_recv_req_complete(worker, rreq, status, "get_zcopy_ok"); } static void ucp_rndv_recv_data_init(ucp_request_t *rreq, size_t size) @@ -1147,7 +1147,19 @@ UCS_PROFILE_FUNC_VOID(ucp_rndv_matched, (worker, rreq, rndv_rts_hdr, rts_seq), rndv_rts_hdr->size, rreq->recv.length, rreq); ucp_rndv_req_send_ats(rndv_req, rreq, rndv_rts_hdr->sreq.reqptr, UCS_OK); ucp_request_recv_generic_dt_finish(rreq); - ucp_rndv_zcopy_recv_req_complete(worker, rreq, UCS_ERR_MESSAGE_TRUNCATED); + + if (ucs_unlikely(worker->tm.rndv_debug.queue_length > 0)) { + ucp_tag_rndv_debug_entry_t *entry = + ucp_worker_rndv_debug_entry(worker, rreq->recv.req_id); + entry->rts_seq = rts_seq; + entry->ep = ep; + entry->remote_reqptr = rndv_rts_hdr->sreq.reqptr; + entry->remote_address = rndv_rts_hdr->address; + entry->rndv_get_req = rndv_req; + } + + ucp_rndv_zcopy_recv_req_complete(worker, rreq, UCS_ERR_MESSAGE_TRUNCATED, + "rndv_truncated"); goto out; } @@ -1757,7 +1769,7 @@ UCS_PROFILE_FUNC(ucs_status_t, ucp_rndv_atp_handler, ucp_request_send(req, 0); } else { UCS_PROFILE_REQUEST_EVENT(req, "rndv_atp_recv", 0); - ucp_rndv_zcopy_recv_req_complete(worker, req, UCS_OK); + ucp_rndv_zcopy_recv_req_complete(worker, req, UCS_OK, "rndv_atp_recv"); } return UCS_OK;