mbox series

[v1,0/7] RPC server tracepoints

Message ID 20200501172849.3798.75190.stgit@klimt.1015granger.net (mailing list archive)
Headers show
Series RPC server tracepoints | expand

Message

Chuck Lever III May 1, 2020, 5:33 p.m. UTC
Hi-

(cc: linux-nfs and linux-rdma)

A mix of RPC-over-sockets and RPC-over-RDMA observability
enhancements, along with one very interesting change:

"SUNRPC: Move xpt_mutex into socket xpo_sendto methods"

I've changed svc_send() so that it no longer holds the transport
mutex during the call to ->xpo_sendto. Instead, the socket
sendto methods take that mutex, since they need to serialize
sends on the socket. The RDMA sendto method does not need that
serialization, so the mutex is not taken in svc_rdma_sendto.

Performance results for that change are reported in the patch
description.

---

Chuck Lever (7):
      SUNRPC: svc_show_status() macro needs enum definitions
      SUNRPC: Move xpt_mutex into socket xpo_sendto methods
      svcrdma: Displayed remote IP address should match stored address
      SUNRPC: Remove kernel memory address from svc_xprt tracepoints
      SUNRPC: Tracepoint to record errors in svc_xpo_create()
      SUNRPC: Trace a few more generic svc_xprt events
      svcrdma: Add tracepoints to report ->xpo_accept failures


 include/linux/sunrpc/svc_xprt.h            |  6 ++
 include/trace/events/rpcrdma.h             | 36 ++++----
 include/trace/events/sunrpc.h              | 95 ++++++++++++++++------
 net/sunrpc/svc_xprt.c                      | 41 ++++------
 net/sunrpc/svcsock.c                       | 37 ++++++---
 net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 35 ++++----
 net/sunrpc/xprtrdma/svc_rdma_sendto.c      |  9 +-
 net/sunrpc/xprtrdma/svc_rdma_transport.c   | 55 +++++--------
 net/sunrpc/xprtsock.c                      | 12 ++-
 9 files changed, 187 insertions(+), 139 deletions(-)

--
Chuck Lever