Hi Bruce- Here are all the patches I'd like to see merged into the next kernel (v4.18 or v5.0) if possible. The main changes are: - Added trace points to svcrdma - Post Recv WRs in Receive completion handler - Handle Send WRs with fewer page allocations - Lots of clean up that results from these changes The svc_rdma_recv_ctxt and svc_rdma_send_ctxt changes improve the efficiency of the transport receive and send paths by reducing memory allocation and DMA mapping activity per RPC. Posting Recv WRs in the Receive completion handler means the Receive Queue does not bounce among all the CPUs. --- Chuck Lever (19): svcrdma: Add proper SPDX tags for NetApp-contributed source svcrdma: Use passed-in net namespace when creating RDMA listener xprtrdma: Prepare RPC/RDMA includes for server-side trace points svcrdma: Trace key RPC/RDMA protocol events svcrdma: Trace key RDMA API events svcrdma: Introduce svc_rdma_recv_ctxt svcrdma: Remove sc_rq_depth svcrdma: Simplify svc_rdma_recv_ctxt_put svcrdma: Preserve Receive buffer until svc_rdma_sendto svcrdma: Persistently allocate and DMA-map Receive buffers svcrdma: Allocate recv_ctxt's on CPU handling Receives svcrdma: Refactor svc_rdma_dma_map_buf svcrdma: Clean up Send SGE accounting svcrdma: Introduce svc_rdma_send_ctxt svcrdma: Don't overrun the SGE array in svc_rdma_send_ctxt svcrdma: Remove post_send_wr svcrdma: Simplify svc_rdma_send() svcrdma: Persistently allocate and DMA-map Send buffers svcrdma: Remove unused svc_rdma_op_ctxt include/linux/sunrpc/svc_rdma.h | 95 ++--- include/trace/events/rpcrdma.h | 584 ++++++++++++++++++++++++++++ net/sunrpc/xprtrdma/backchannel.c | 2 net/sunrpc/xprtrdma/fmr_ops.c | 3 net/sunrpc/xprtrdma/frwr_ops.c | 2 net/sunrpc/xprtrdma/module.c | 4 net/sunrpc/xprtrdma/rpc_rdma.c | 7 net/sunrpc/xprtrdma/svc_rdma.c | 3 net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 54 +-- net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 439 +++++++++++++++------ net/sunrpc/xprtrdma/svc_rdma_rw.c | 133 +++--- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 510 ++++++++++++++++-------- net/sunrpc/xprtrdma/svc_rdma_transport.c | 484 ++++------------------- net/sunrpc/xprtrdma/transport.c | 4 net/sunrpc/xprtrdma/verbs.c | 1 net/sunrpc/xprtrdma/xprt_rdma.h | 2 16 files changed, 1461 insertions(+), 866 deletions(-) -- Chuck Lever -- 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