[PATCH v4 0/4] new ib_drain_qp() API

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

 



This series creates new helper API functions for draining a queue pair.
It is a rework of an original patch created by Christoph Hellwig as
part of the CQ API rework and was dropped to be resubmitted by me with
iw_cxgb4 support.

Original thread: http://www.spinics.net/lists/linux-rdma/msg30296.html


Changes since v3:

- WARN_ONCE() if the CQ is using IB_POLL_DIRECT context.

- added iser patch to use ib_drain_sq().

- fixed up function comments to specify caller requirements

- checkpatched


Changes since v2:

- created 3 drain API functions: ib_drain_rq(), ib_drain_sq(), and
ib_drain_qp()

- add provider-specific drain function pointers for the sq and rq

- refactored the code a bit

- support for IB_DIRECT_POLL CQs


Changes since v1:

- added comments to the ib_drain_qp() function header specifying the
consumer requirements

- in __ib_drain_qp(), if the ib_post_send() fails, still wait for the
recv wr to drain since we already posted it.

- CC the SRP maintainer, bart.vanassche@xxxxxxxxxxx.

---

Steve Wise (4):
  IB: new common API for draining queues
  iw_cxgb4: add queue drain functions
  IB/srp: Use ib_drain_rq()
  IB/iser: Use ib_drain_sq()

 drivers/infiniband/core/verbs.c              | 164 +++++++++++++++++++++++++++
 drivers/infiniband/hw/cxgb4/cq.c             |   9 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h       |   4 +
 drivers/infiniband/hw/cxgb4/provider.c       |   2 +
 drivers/infiniband/hw/cxgb4/qp.c             |  16 +++
 drivers/infiniband/ulp/iser/iscsi_iser.h     |   7 --
 drivers/infiniband/ulp/iser/iser_initiator.c |   7 --
 drivers/infiniband/ulp/iser/iser_verbs.c     |  15 +--
 drivers/infiniband/ulp/srp/ib_srp.c          |  40 +------
 include/rdma/ib_verbs.h                      |   5 +
 10 files changed, 205 insertions(+), 64 deletions(-)

-- 
2.7.0

--
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