浏览代码

RDMA/cxgb4: Issue RI.FINI before closing when entering TERM

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Vipul Pandya <vipul@chelsio.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Steve Wise 12 年之前
父节点
当前提交
09992579bc
共有 1 个文件被更改,包括 6 次插入1 次删除
  1. 6 1
      drivers/infiniband/hw/cxgb4/qp.c

+ 6 - 1
drivers/infiniband/hw/cxgb4/qp.c

@@ -1350,9 +1350,14 @@ int c4iw_modify_qp(struct c4iw_dev *rhp, struct c4iw_qp *qhp,
 			qhp->attr.ecode = attrs->ecode;
 			t4_set_wq_in_error(&qhp->wq);
 			ep = qhp->ep;
+			disconnect = 1;
 			if (!internal)
 				terminate = 1;
-			disconnect = 1;
+			else {
+				ret = rdma_fini(rhp, qhp, ep);
+				if (ret)
+					goto err;
+			}
 			c4iw_get_ep(&qhp->ep->com);
 			break;
 		case C4IW_QP_STATE_ERROR: