Signed-off-by: Arlin Davis <arlin.r.da...@intel.com>
---
 dapl/openib_ucm/cm.c |   38 +++++++++++++++++++++++++++++---------
 1 files changed, 29 insertions(+), 9 deletions(-)

diff --git a/dapl/openib_ucm/cm.c b/dapl/openib_ucm/cm.c
index 07b8458..b28e911 100644
--- a/dapl/openib_ucm/cm.c
+++ b/dapl/openib_ucm/cm.c
@@ -395,12 +395,22 @@ static void ucm_process_recv(ib_hca_transport_t *tp,
                }
                dapl_os_unlock(&cm->lock);
                break;
-       
+       case DCM_RELEASED:
+               /* UD reply retried, ignore */
+               if (ntohs(msg->op) != DCM_REP) {
+                       dapl_log(DAPL_DBG_TYPE_WARN,
+                               " ucm_recv: UNKNOWN operation"
+                               " <- op %d, %s spsp %d sqpn %d\n", 
+                               ntohs(msg->op), dapl_cm_state_str(cm->state),
+                               ntohs(msg->sport), ntohl(msg->sqpn));
+               }
+               dapl_os_unlock(&cm->lock);
+               break;
        default:
                dapl_log(DAPL_DBG_TYPE_WARN,
                                " ucm_recv: UNKNOWN state"
-                               " <- op %d, st %d spsp %d sqpn %d\n", 
-                               ntohs(msg->op), cm->state, 
+                               " <- op %d, %s spsp %d sqpn %d\n", 
+                               ntohs(msg->op), dapl_cm_state_str(cm->state), 
                                ntohs(msg->sport), ntohl(msg->sqpn));
                dapl_os_unlock(&cm->lock);
                break;
@@ -479,7 +489,7 @@ retry_listenq:
        /* not match on listenq for valid request, send reject */
        if (ntohs(msg->op) == DCM_REQ && !found)
                ucm_reject(tp, msg);
-#if DAPL_DBG
+
        if (!found) {
                dapl_log(DAPL_DBG_TYPE_WARN,
                        " ucm_recv: NO MATCH op %s 0x%x %d i0x%x c0x%x"
@@ -490,7 +500,7 @@ retry_listenq:
                        ntohs(msg->saddr.ib.lid), ntohs(msg->sport), 
                        ntohl(msg->saddr.ib.qpn));
        }
-#endif
+
        return found;
 }
 
@@ -813,8 +823,18 @@ DAT_RETURN dapli_cm_disconnect(dp_ib_cm_handle_t cm)
        case DCM_DISC_PENDING:
                /* DREQ timeout, resend until retries exhausted */
                cm->msg.op = htons(DCM_DREQ);
-               if (cm->retries >= cm->hca->ib_trans.retries)
+               if (cm->retries >= cm->hca->ib_trans.retries) {
+                       dapl_log(DAPL_DBG_TYPE_ERR, 
+                               " CM_DREQ: RETRIES EXHAUSTED:"
+                               " 0x%x %d 0x%x -> 0x%x %d 0x%x\n",
+                               htons(cm->msg.saddr.ib.lid), 
+                               htonl(cm->msg.saddr.ib.qpn), 
+                               htons(cm->msg.sport), 
+                               htons(cm->msg.daddr.ib.lid), 
+                               htonl(cm->msg.dqpn), 
+                               htons(cm->msg.dport));
                        finalize = 1;
+               }
                break;
        case DCM_DISC_RECV:
                /* DREQ received, send DREP and schedule event */
@@ -857,7 +877,7 @@ dapli_cm_connect(DAPL_EP *ep, dp_ib_cm_handle_t cm)
        }
        
        if (cm->retries == cm->hca->ib_trans.retries) {
-               dapl_log(DAPL_DBG_TYPE_WARN, 
+               dapl_log(DAPL_DBG_TYPE_ERR, 
                        " CM_REQ: RETRIES EXHAUSTED:"
                         " 0x%x %d 0x%x -> 0x%x %d 0x%x\n",
                         htons(cm->msg.saddr.ib.lid), 
@@ -1289,8 +1309,8 @@ static int ucm_reply(dp_ib_cm_handle_t cm)
        }
 
        if (cm->retries == cm->hca->ib_trans.retries) {
-               dapl_log(DAPL_DBG_TYPE_WARN, 
-                        " CM_REP: RETRIES EXHAUSTED"
+               dapl_log(DAPL_DBG_TYPE_ERR, 
+                        " CM_REPLY: RETRIES EXHAUSTED"
                         " 0x%x %d 0x%x -> 0x%x %d 0x%x\n",
                         htons(cm->msg.saddr.ib.lid), 
                         htons(cm->msg.sport), 
-- 
1.5.2.5

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to