diff options
author | Yonatan Cohen <yonatanc@mellanox.com> | 2016-11-16 09:39:18 +0100 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-11-17 02:03:44 +0100 |
commit | 6d931308f55faaef3f30bd0346c47f99528b229d (patch) | |
tree | 455fb5bd1eeadf3572275aabcc57e47e4c1933c2 | |
parent | IB/rxe: Clear queue buffer when modifying QP to reset (diff) | |
download | linux-6d931308f55faaef3f30bd0346c47f99528b229d.tar.xz linux-6d931308f55faaef3f30bd0346c47f99528b229d.zip |
IB/rxe: Update qp state for user query
The method rxe_qp_error() transitions QP to error state
and make sure the QP is drained. It did not though update
the QP state for user's query.
This patch fixes this.
Fixes: 8700e3e7c485 ("Soft RoCE driver")
Signed-off-by: Yonatan Cohen <yonatanc@mellanox.com>
Reviewed-by: Moni Shoua <monis@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
-rw-r--r-- | drivers/infiniband/sw/rxe/rxe_qp.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/sw/rxe/rxe_qp.c b/drivers/infiniband/sw/rxe/rxe_qp.c index 95aaaa282a04..c3e60e4bde6e 100644 --- a/drivers/infiniband/sw/rxe/rxe_qp.c +++ b/drivers/infiniband/sw/rxe/rxe_qp.c @@ -574,6 +574,7 @@ void rxe_qp_error(struct rxe_qp *qp) { qp->req.state = QP_STATE_ERROR; qp->resp.state = QP_STATE_ERROR; + qp->attr.qp_state = IB_QPS_ERR; /* drain work and packet queues */ rxe_run_task(&qp->resp.task, 1); |