Explorar o código

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>
Steve Wise %!s(int64=15) %!d(string=hai) anos
pai
achega
cb58160e72
Modificáronse 1 ficheiros con 1 adicións e 0 borrados
  1. 1 0
      drivers/infiniband/core/iwcm.c

+ 1 - 0
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: