kernel_optimize_test/net/sunrpc/xprtrdma
Chuck Lever 8bd5ba86d9 svcrdma: Use new CQ API for RPC-over-RDMA server receive CQs
Calling ib_poll_cq() to sort through WCs during a completion is a
common pattern amongst RDMA consumers. Since commit 14d3a3b249
("IB: add a proper completion queue abstraction"), WC sorting can
be handled by the IB core.

By converting to this new API, svcrdma 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 operations on a consumer's QP, and handle the
completions itself.

svcrdma receive completions no longer use the dto_tasklet. Each
polled Receive WC is now handled individually in soft IRQ context.

The server transport's rdma_stat_rq_poll and rdma_stat_rq_prod
metrics are no longer updated.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2016-03-01 13:06:42 -08:00
..
backchannel.c xprtrdma: Disable RPC/RDMA backchannel debugging messages 2015-12-18 15:34:33 -05:00
fmr_ops.c xprtrdma: Add ro_unmap_sync method for FMR 2015-12-18 15:34:33 -05:00
frwr_ops.c Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
Makefile svcrdma: Add class for RDMA backwards direction transport 2016-01-19 15:30:48 -05:00
module.c rpcrdma: Merge svcrdma and xprtrdma modules into one 2015-06-04 16:56:02 -04:00
physical_ops.c xprtrdma: Add ro_unmap_sync method for all-physical registration 2015-12-18 15:34:33 -05:00
rpc_rdma.c xprtrdma: Invalidate in the RPC reply handler 2015-12-18 15:34:33 -05:00
svc_rdma_backchannel.c svcrdma: svc_rdma_post_recv() should close connection on error 2016-03-01 13:06:37 -08:00
svc_rdma_marshal.c svcrdma: Hook up the logic to return ERR_CHUNK 2016-03-01 13:06:40 -08:00
svc_rdma_recvfrom.c svcrdma: Remove close_out exit path 2016-03-01 13:06:41 -08:00
svc_rdma_sendto.c svcrdma: Make RDMA_ERROR messages work 2016-03-01 13:06:38 -08:00
svc_rdma_transport.c svcrdma: Use new CQ API for RPC-over-RDMA server receive CQs 2016-03-01 13:06:42 -08:00
svc_rdma.c svcrdma: Define maximum number of backchannel requests 2016-01-19 15:30:48 -05:00
transport.c Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
verbs.c Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
xprt_rdma.h Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00