aboutsummaryrefslogtreecommitdiffstats
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
parente6cc0fd1e31cfe48e207de78742ccdf301369bf3 (diff)
downloadkernel_samsung_smdk4412-cb58160e72244a23f4e0cf4d6f81ffbd131fcd51.zip
kernel_samsung_smdk4412-cb58160e72244a23f4e0cf4d6f81ffbd131fcd51.tar.gz
kernel_samsung_smdk4412-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>
-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 8f9509e..55d093a 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: