Commit 42235f80 authored by Sagi Grimberg's avatar Sagi Grimberg Committed by Doug Ledford

IB/core: Don't drain non-existent rq queue-pair

The drain_rq function expects a normal receive qp to drain.  A qp can
only have either a normal rq or an srq.  If there is an srq, there
is no rq to drain.  Until the API supports draining SRQs, simply
skip draining the rq when the qp has an srq attached.

Fixes: 765d6774 ("IB: new common API for draining queues")
Signed-off-by: default avatarSagi Grimberg <sagi@grimberg.me>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent f4e7de63
...@@ -1860,6 +1860,7 @@ EXPORT_SYMBOL(ib_drain_rq); ...@@ -1860,6 +1860,7 @@ EXPORT_SYMBOL(ib_drain_rq);
void ib_drain_qp(struct ib_qp *qp) void ib_drain_qp(struct ib_qp *qp)
{ {
ib_drain_sq(qp); ib_drain_sq(qp);
if (!qp->srq)
ib_drain_rq(qp); ib_drain_rq(qp);
} }
EXPORT_SYMBOL(ib_drain_qp); EXPORT_SYMBOL(ib_drain_qp);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment