[PATCH rdma-core 2/2] providers/i40iw: Skip CQEs for destroyed QP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Currently CQ poll returns an error if the QP
associated with a CQE is destroyed although
there can be more CQEs for other QPs which are
still active. Fix this by skipping the CQE for
the destroyed QP and continue with CQE processing.

The patch is similar to driver commit f8a4e76c75e5
("RDMA/i40iw: Fix for checking if the QP is destroyed")

Fixes: faf6782ac8bc ("libi40iw: Initial public release of libi40iw-0.5.223")
Reported-by: Andrew Boyer <Andrew.Boyer@xxxxxxxx>
Signed-off-by: Tatyana Nikolova <tatyana.e.nikolova@xxxxxxxxx>
---
 providers/i40iw/i40iw_uverbs.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/providers/i40iw/i40iw_uverbs.c b/providers/i40iw/i40iw_uverbs.c
index bb3cfd43..d77a4691 100644
--- a/providers/i40iw/i40iw_uverbs.c
+++ b/providers/i40iw/i40iw_uverbs.c
@@ -342,6 +342,8 @@ int i40iw_upoll_cq(struct ibv_cq *cq, int num_entries, struct ibv_wc *entry)
 		ret = iwucq->cq.ops.iw_cq_poll_completion(&iwucq->cq, &cq_poll_info);
 		if (ret == I40IW_ERR_QUEUE_EMPTY) {
 			break;
+		} else if (ret == I40IW_ERR_QUEUE_DESTROYED) {
+			continue;
 		} else if (ret) {
 			fprintf(stderr, PFX "%s: Error polling CQ, status %d\n", __func__, ret);
 			if (!cqe_count)
-- 
2.14.2

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux