From c4aa90b06ada193aeb8c630e79a2d22d73f66989 Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Wed, 30 Nov 2005 10:00:25 -0800 Subject: [PATCH] --- yaml --- r: 17052 b: refs/heads/master c: 227eca83690da7dcbd698d3268e29402e0571723 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/infiniband/core/cm.c | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index af8fa56f3bc8..23530cbaf869 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a3c8ab4fe8f006d742c24be677518bfa9862e732 +refs/heads/master: 227eca83690da7dcbd698d3268e29402e0571723 diff --git a/trunk/drivers/infiniband/core/cm.c b/trunk/drivers/infiniband/core/cm.c index 02110e00d145..1fe21865d1f2 100644 --- a/trunk/drivers/infiniband/core/cm.c +++ b/trunk/drivers/infiniband/core/cm.c @@ -684,6 +684,13 @@ void ib_destroy_cm_id(struct ib_cm_id *cm_id) cm_reject_sidr_req(cm_id_priv, IB_SIDR_REJECT); break; case IB_CM_REQ_SENT: + ib_cancel_mad(cm_id_priv->av.port->mad_agent, cm_id_priv->msg); + spin_unlock_irqrestore(&cm_id_priv->lock, flags); + ib_send_cm_rej(cm_id, IB_CM_REJ_TIMEOUT, + &cm_id_priv->av.port->cm_dev->ca_guid, + sizeof cm_id_priv->av.port->cm_dev->ca_guid, + NULL, 0); + break; case IB_CM_MRA_REQ_RCVD: case IB_CM_REP_SENT: case IB_CM_MRA_REP_RCVD: @@ -694,10 +701,8 @@ void ib_destroy_cm_id(struct ib_cm_id *cm_id) case IB_CM_REP_RCVD: case IB_CM_MRA_REP_SENT: spin_unlock_irqrestore(&cm_id_priv->lock, flags); - ib_send_cm_rej(cm_id, IB_CM_REJ_TIMEOUT, - &cm_id_priv->av.port->cm_dev->ca_guid, - sizeof cm_id_priv->av.port->cm_dev->ca_guid, - NULL, 0); + ib_send_cm_rej(cm_id, IB_CM_REJ_CONSUMER_DEFINED, + NULL, 0, NULL, 0); break; case IB_CM_ESTABLISHED: spin_unlock_irqrestore(&cm_id_priv->lock, flags);