mbox series

[v3,00/24] NFS/RDMA client for next

Message ID 20181210161723.4198.51071.stgit@manet.1015granger.net (mailing list archive)
Headers show
Series NFS/RDMA client for next | expand

Message

Chuck Lever III Dec. 10, 2018, 4:29 p.m. UTC
Hi Anna, I'd like to see these patches merged into next.

There have been several regressions related to the ->send_request
changes merged into v4.20. As a result, this series contains some
fixes and clean-ups that resulted from testing and close code
audit while working on those regressions.

The soft IRQ warnings and DMAR faults that I observed with krb5
flavors on NFS/RDMA are resolved by a prototype fix that delays
the xprt_wake_pending_tasks call at disconnect. This fix is not
ready yet and thus does not appear in this series.

However, use of Kerberos seems to trigger a lot of connection loss.
The dynamic rpcrdma_req allocation patches that were in this series
last time have been dropped because they made it even worse.

"xprtrdma: Prevent leak of rpcrdma_rep objects" is included in this
series for convenience. Please apply that to v4.20-rc. Thanks!

Changes since v2:
- Rebased on v4.20-rc6 to pick up recent fixes
- Patches related to "xprtrdma: Dynamically allocate rpcrdma_reqs"
  have been dropped
- A number of revisions of documenting comments have been added
- Several new trace points are introduced


Changes since v1:
- Rebased on v4.20-rc4
- Series includes the full set, not just the RDMA-related fixes
- "Plant XID..." has been improved, based on testing with rxe
- The required rxe driver fix is included for convenience
- "Fix ri_max_segs..." replaces a bogus one-line fix in v1
- The patch description for "Remove support for FMR" was updated

---

Chuck Lever (24):
      xprtrdma: Prevent leak of rpcrdma_rep objects
      IB/rxe: IB_WR_REG_MR does not capture MR's iova field
      xprtrdma: Remove support for FMR memory registration
      xprtrdma: Fix ri_max_segs and the result of ro_maxpages
      xprtrdma: Reduce max_frwr_depth
      xprtrdma: Plant XID in on-the-wire RDMA offset (FRWR)
      xprtrdma: Recognize XDRBUF_SPARSE_PAGES
      xprtrdma: Remove request_module from backchannel
      xprtrdma: Expose transport header errors
      xprtrdma: Simplify locking that protects the rl_allreqs list
      xprtrdma: Cull dprintk() call sites
      xprtrdma: Clean up of xprtrdma chunk trace points
      xprtrdma: Relocate the xprtrdma_mr_map trace points
      xprtrdma: Add trace points for calls to transport switch methods
      NFS: Make "port=" mount option optional for RDMA mounts
      SUNRPC: Remove support for kerberos_v1
      SUNRPC: Fix some kernel doc complaints
      NFS: Fix NFSv4 symbolic trace point output
      SUNRPC: Simplify defining common RPC trace events
      xprtrdma: Trace mapping, alloc, and dereg failures
      xprtrdma: Update comments in frwr_op_send
      xprtrdma: Replace outdated comment for rpcrdma_ep_post
      xprtrdma: Add documenting comment for rpcrdma_buffer_destroy
      xprtrdma: Clarify comments in rpcrdma_ia_remove


 drivers/infiniband/sw/rxe/rxe_req.c      |    1 
 fs/nfs/nfs4trace.h                       |  456 +++++++++++++++++++++---------
 fs/nfs/super.c                           |   10 +
 include/linux/sunrpc/gss_krb5.h          |   39 ---
 include/linux/sunrpc/gss_krb5_enctypes.h |    2 
 include/trace/events/rpcrdma.h           |  216 +++++++++++++-
 include/trace/events/sunrpc.h            |  172 +++++------
 net/sunrpc/Kconfig                       |    3 
 net/sunrpc/auth_gss/Makefile             |    2 
 net/sunrpc/auth_gss/gss_krb5_crypto.c    |  423 ----------------------------
 net/sunrpc/auth_gss/gss_krb5_keys.c      |   53 ---
 net/sunrpc/auth_gss/gss_krb5_mech.c      |  278 ------------------
 net/sunrpc/auth_gss/gss_krb5_seal.c      |   73 -----
 net/sunrpc/auth_gss/gss_krb5_seqnum.c    |  164 -----------
 net/sunrpc/auth_gss/gss_krb5_unseal.c    |   80 -----
 net/sunrpc/auth_gss/gss_krb5_wrap.c      |  254 -----------------
 net/sunrpc/auth_gss/gss_mech_switch.c    |    2 
 net/sunrpc/backchannel_rqst.c            |    2 
 net/sunrpc/xprtmultipath.c               |    4 
 net/sunrpc/xprtrdma/Makefile             |    3 
 net/sunrpc/xprtrdma/backchannel.c        |   25 --
 net/sunrpc/xprtrdma/fmr_ops.c            |  337 ----------------------
 net/sunrpc/xprtrdma/frwr_ops.c           |   44 ++-
 net/sunrpc/xprtrdma/rpc_rdma.c           |   47 ++-
 net/sunrpc/xprtrdma/transport.c          |   56 +---
 net/sunrpc/xprtrdma/verbs.c              |  107 +++----
 net/sunrpc/xprtrdma/xprt_rdma.h          |    9 -
 net/sunrpc/xprtsock.c                    |    2 
 28 files changed, 734 insertions(+), 2130 deletions(-)
 delete mode 100644 net/sunrpc/auth_gss/gss_krb5_seqnum.c
 delete mode 100644 net/sunrpc/xprtrdma/fmr_ops.c

--
Chuck Lever

Comments

Jason Gunthorpe Dec. 10, 2018, 5:55 p.m. UTC | #1
On Mon, Dec 10, 2018 at 11:29:17AM -0500, Chuck Lever wrote:
> Hi Anna, I'd like to see these patches merged into next.
> 
> There have been several regressions related to the ->send_request
> changes merged into v4.20. As a result, this series contains some
> fixes and clean-ups that resulted from testing and close code
> audit while working on those regressions.
> 
> The soft IRQ warnings and DMAR faults that I observed with krb5
> flavors on NFS/RDMA are resolved by a prototype fix that delays
> the xprt_wake_pending_tasks call at disconnect. This fix is not
> ready yet and thus does not appear in this series.
> 
> However, use of Kerberos seems to trigger a lot of connection loss.
> The dynamic rpcrdma_req allocation patches that were in this series
> last time have been dropped because they made it even worse.
> 
> "xprtrdma: Prevent leak of rpcrdma_rep objects" is included in this
> series for convenience. Please apply that to v4.20-rc. Thanks!
> 
> Changes since v2:
> - Rebased on v4.20-rc6 to pick up recent fixes
> - Patches related to "xprtrdma: Dynamically allocate rpcrdma_reqs"
>   have been dropped
> - A number of revisions of documenting comments have been added
> - Several new trace points are introduced
> 
> 
> Changes since v1:
> - Rebased on v4.20-rc4
> - Series includes the full set, not just the RDMA-related fixes
> - "Plant XID..." has been improved, based on testing with rxe
> - The required rxe driver fix is included for convenience
> - "Fix ri_max_segs..." replaces a bogus one-line fix in v1
> - The patch description for "Remove support for FMR" was updated
> 
> 
> Chuck Lever (24):
>       xprtrdma: Prevent leak of rpcrdma_rep objects
>       IB/rxe: IB_WR_REG_MR does not capture MR's iova field

This last patch is already applied to the RDMA tree, please do not
apply it to another tree.

Thanks,
Jason