summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/cxgb3
diff options
context:
space:
mode:
authorSteve Wise2007-02-15 15:49:02 +0100
committerRoland Dreier2007-02-16 22:57:35 +0100
commita1a750523b58cc4bb5a94fbb275a6f2a8bd9ace7 (patch)
treee792e550f117037d5e951f65794c164af1764724 /drivers/infiniband/hw/cxgb3
parentRDMA/iwcm: iw_cm_id destruction race fixes (diff)
downloadkernel-qcow2-linux-a1a750523b58cc4bb5a94fbb275a6f2a8bd9ace7.tar.gz
kernel-qcow2-linux-a1a750523b58cc4bb5a94fbb275a6f2a8bd9ace7.tar.xz
kernel-qcow2-linux-a1a750523b58cc4bb5a94fbb275a6f2a8bd9ace7.zip
RDMA/cxgb3: Fail posts synchronously when in TERMINATE state
For T3B devices, mark user QP in error once we transition to TERMINATE. Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/cxgb3')
-rw-r--r--drivers/infiniband/hw/cxgb3/iwch_qp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/cxgb3/iwch_qp.c b/drivers/infiniband/hw/cxgb3/iwch_qp.c
index e066727504b6..da13a3873200 100644
--- a/drivers/infiniband/hw/cxgb3/iwch_qp.c
+++ b/drivers/infiniband/hw/cxgb3/iwch_qp.c
@@ -846,6 +846,8 @@ int iwch_modify_qp(struct iwch_dev *rhp, struct iwch_qp *qhp,
break;
case IWCH_QP_STATE_TERMINATE:
qhp->attr.state = IWCH_QP_STATE_TERMINATE;
+ if (t3b_device(qhp->rhp))
+ cxio_set_wq_in_error(&qhp->wq);
if (!internal)
terminate = 1;
break;