summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/core/iwcm.c
diff options
context:
space:
mode:
authorSteve Wise <swise@opengridcomputing.com>2009-09-09 11:37:38 -0700
committerRoland Dreier <rolandd@cisco.com>2009-09-09 11:37:38 -0700
commitcb58160e72244a23f4e0cf4d6f81ffbd131fcd51 (patch)
tree5a23970a4beb9c4aedb4c68fe2949bafc3864ba4 /drivers/infiniband/core/iwcm.c
parente6cc0fd1e31cfe48e207de78742ccdf301369bf3 (diff)
downloadlinux-cb58160e72244a23f4e0cf4d6f81ffbd131fcd51.tar.bz2
RDMA/iwcm: Reject the connection when the cm_id is destroyed
If the cm_id of a connect request is destroyed prior to the ULP accepting or rejecting the connection, then the provider never cleans up the connection. The iwcm should explicitly reject these connections if the cm_id is destroyed. Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/core/iwcm.c')
-rw-r--r--drivers/infiniband/core/iwcm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/core/iwcm.c b/drivers/infiniband/core/iwcm.c
index 8f9509e1ebf7..55d093a36ae4 100644
--- a/drivers/infiniband/core/iwcm.c
+++ b/drivers/infiniband/core/iwcm.c
@@ -362,6 +362,7 @@ static void destroy_cm_id(struct iw_cm_id *cm_id)
* In either case, must tell the provider to reject.
*/
cm_id_priv->state = IW_CM_STATE_DESTROYING;
+ cm_id->device->iwcm->reject(cm_id, NULL, 0);
break;
case IW_CM_STATE_CONN_SENT:
case IW_CM_STATE_DESTROYING: