summaryrefslogtreecommitdiffstats
path: root/lib/interval_tree.c
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2016-03-04 11:28:36 -0500
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2016-03-14 14:56:04 -0400
commit552bf225281f96e7a02e1a1b874966fdb6b997e0 (patch)
tree6dc7f21bc30ff3e0e7ac1c9c2d465069ed9c612c /lib/interval_tree.c
parent23826c7aeac7e333bfee6f10a3407a23c58b6147 (diff)
downloadblackbird-op-linux-552bf225281f96e7a02e1a1b874966fdb6b997e0.tar.gz
blackbird-op-linux-552bf225281f96e7a02e1a1b874966fdb6b997e0.zip
xprtrdma: Use new CQ API for RPC-over-RDMA client receive CQs
Calling ib_poll_cq() to sort through WCs during a completion is a common pattern amongst RDMA consumers. Since commit 14d3a3b2498e ("IB: add a proper completion queue abstraction"), WC sorting can be handled by the IB core. By converting to this new API, xprtrdma is made a better neighbor to other RDMA consumers, as it allows the core to schedule the delivery of completions more fairly amongst all active consumers. Because each ib_cqe carries a pointer to a completion method, the core can now post its own operations on a consumer's QP, and handle the completions itself, without changes to the consumer. xprtrdma's reply processing is already handled in a work queue, but there is some initial order-dependent processing that is done in the soft IRQ context before a work item is scheduled. IB_POLL_SOFTIRQ is a direct replacement for the current xprtrdma receive code path. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Reviewed-by: Devesh Sharma <devesh.sharma@broadcom.com> Reviewed-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'lib/interval_tree.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud