mbox series

[GIT,PULL] nfsd changes for 5.15

Message ID A5435167-2468-4F7B-8084-F542F8C1A838@oracle.com (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] nfsd changes for 5.15 | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git tags/nfsd-5.15

Message

Chuck Lever Aug. 31, 2021, 2:46 p.m. UTC
Hi Linus-

NFSD pull request follows below. First some notes:

Stephen Rothwell reports a minor merge conflict with Jeff Layton's
file-locks tree (and now your tree):

https://lore.kernel.org/lkml/20210824100737.4bd6d815@canb.auug.org.au/

The resolution Stephen provided should be adequate.


There are two v5.13 regressions we are aware of:

- "[Bug 213887] kernel v5.13 regression & NFSv4.2 client timeouts?"

  This issue appears to be addressed by recent commit 062b829c52ef
  ("SUNRPC: Fix XPT_BUSY flag leakage in svc_handle_xprt()...")

- NFS server regression in kernel 5.13 (tested w/ 5.13.9)

  A fix for this has been queued for nfsd-5.15-1. It was a bit late
  to be included in nfsd-5.15.


And there are two longstanding issues we are aware of:

- BTRFS subvolumes cannot be exported properly by NFSD

  As featured on lwn.net:

  Part I:  https://lwn.net/Articles/866582/
  Part II: https://lwn.net/Articles/866709/

  Neil Brown is working on a set of patches to address this.

- NFSv4.1+ backchannel not getting restored after PATH_DOWN

  This might be an NFS/RDMA-only problem. The reproducer is very
  rare, so it's taking a while to nail down.


 ---- cut here ----


The following changes since commit 7c60610d476766e128cc4284bb6349732cbd6606:

  Linux 5.14-rc6 (2021-08-15 13:40:53 -1000)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git tags/nfsd-5.15

for you to fetch changes up to 0bcc7ca40bd823193224e9f38bafbd8325aaf566:

  nfsd: fix crash on LOCKT on reexported NFSv3 (2021-08-26 15:32:29 -0400)

----------------------------------------------------------------
New features:
- Support for server-side disconnect injection via debugfs
- Protocol definitions for new RPC_AUTH_TLS authentication flavor

Performance improvements:
- Reduce page allocator traffic in the NFSD splice read actor
- Reduce CPU utilization in svcrdma's Send completion handler

Notable bug fixes:
- Stabilize lockd operation when re-exporting NFS mounts
- Fix the use of %.*s in NFSD tracepoints
- Fix /proc/sys/fs/nfs/nsm_use_hostnames

----------------------------------------------------------------
Benjamin Coddington (1):
      lockd: Fix invalid lockowner cast after vfs_test_lock

Chuck Lever (15):
      NFSD: Clean up splice actor
      SUNRPC: Add svc_rqst_replace_page() API
      NFSD: Batch release pages during splice read
      NFSD: Use new __string_len C macros for the nfs_dirent tracepoint
      NFSD: Use new __string_len C macros for nfsd_clid_class
      svcrdma: Fewer calls to wake_up() in Send completion handler
      svcrdma: Relieve contention on sc_send_lock.
      svcrdma: Convert rdma->sc_rw_ctxts to llist
      SUNRPC: Fix a NULL pointer deref in trace_svc_stats_latency()
      SUNRPC: Add RPC_AUTH_TLS protocol numbers
      svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free()
      SUNRPC: Add a /sys/kernel/debug/fail_sunrpc/ directory
      SUNRPC: Move client-side disconnect injection
      SUNRPC: Server-side disconnect injection
      SUNRPC: Add documentation for the fail_sunrpc/ directory

J. Bruce Fields (11):
      rpc: fix gss_svc_init cleanup on failure
      nfsd4: Fix forced-expiry locking
      lockd: lockd server-side shouldn't set fl_ops
      nlm: minor nlm_lookup_file argument change
      nlm: minor refactoring
      lockd: update nlm_lookup_file reexport comment
      Keep read and write fds with each nlm_file
      nfs: don't atempt blocking locks on nfs reexports
      lockd: don't attempt blocking locks on nfs reexports
      nfs: don't allow reexport reclaims
      nfsd: fix crash on LOCKT on reexported NFSv3

Jia He (2):
      sysctl: introduce new proc handler proc_dobool
      lockd: change the proc_handler for nsm_use_hostnames

NeilBrown (1):
      NFSD: remove vanity comments

Steven Rostedt (VMware) (1):
      tracing: Add trace_event helper macros __string_len() and __assign_str_len()

 Documentation/fault-injection/fault-injection.rst |  18 ++++++++++++++
 fs/lockd/svc.c                                    |   2 +-
 fs/lockd/svc4proc.c                               |   7 ++++--
 fs/lockd/svclock.c                                |  82 ++++++++++++++++++++++++++++++++++++--------------------------
 fs/lockd/svcproc.c                                |   6 +++--
 fs/lockd/svcsubs.c                                | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------
 fs/nfs/export.c                                   |   2 +-
 fs/nfs/file.c                                     |   3 +++
 fs/nfsd/lockd.c                                   |   8 ++++--
 fs/nfsd/nfs4state.c                               |  20 ++++++++++-----
 fs/nfsd/nfsproc.c                                 |   1 +
 fs/nfsd/trace.h                                   |  17 ++++++-------
 fs/nfsd/vfs.c                                     |  21 ++++------------
 include/linux/errno.h                             |   1 +
 include/linux/exportfs.h                          |   2 ++
 include/linux/fs.h                                |   1 +
 include/linux/lockd/bind.h                        |   3 ++-
 include/linux/lockd/lockd.h                       |  11 ++++++---
 include/linux/sunrpc/msg_prot.h                   |   1 +
 include/linux/sunrpc/svc.h                        |   5 ++++
 include/linux/sunrpc/svc_rdma.h                   |   7 +++---
 include/linux/sunrpc/xdr.h                        |   1 +
 include/linux/sunrpc/xprt.h                       |  18 --------------
 include/linux/sysctl.h                            |   2 ++
 include/trace/events/sunrpc.h                     |   8 +++---
 include/trace/trace_events.h                      |  22 +++++++++++++++++
 include/uapi/linux/nfsd/nfsfh.h                   |   1 -
 kernel/sysctl.c                                   |  42 ++++++++++++++++++++++++++++++++
 lib/Kconfig.debug                                 |   7 ++++++
 net/sunrpc/auth_gss/svcauth_gss.c                 |   2 +-
 net/sunrpc/debugfs.c                              |  85 ++++++++++++++++++++--------------------------------------------
 net/sunrpc/fail.h                                 |  25 +++++++++++++++++++
 net/sunrpc/svc.c                                  |  44 +++++++++++++++++++++++++++++++++
 net/sunrpc/svc_xprt.c                             |   3 +++
 net/sunrpc/xprt.c                                 |  14 +++++++++++
 net/sunrpc/xprtrdma/svc_rdma_rw.c                 |  56 +++++++++++++++++++++++++++---------------
 net/sunrpc/xprtrdma/svc_rdma_sendto.c             |  41 +++++++++++++++++--------------
 net/sunrpc/xprtrdma/svc_rdma_transport.c          |  11 ++-------
 samples/trace_events/trace-events-sample.h        |  27 +++++++++++++++++++++
 39 files changed, 495 insertions(+), 246 deletions(-)
 create mode 100644 net/sunrpc/fail.h

--
Chuck Lever

Comments

pr-tracker-bot@kernel.org Aug. 31, 2021, 6:19 p.m. UTC | #1
The pull request you sent on Tue, 31 Aug 2021 14:46:38 +0000:

> git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git tags/nfsd-5.15

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8bda95577627dc0633c48d581ea3605c27efe829

Thank you!