[GIT PULL] Please pull NFS client changes for 5.11

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

The following changes since commit
63e2fffa59a9dd91e443b08832656399fd80b7f0:

  pNFS/flexfiles: Fix array overflow when flexfiles mirroring is
enabled (2020-11-30 10:52:22 -0500)

are available in the Git repository at:

  git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-
5.11-1

for you to fetch changes up to
52104f274e2d7f134d34bab11cada8913d4544e2:

  NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() (2020-12-16
17:25:24 -0500)


Stephen Rothwell has noted that there are conflicts with the upstream
tree.
They are due to the last-minute fix to the NFSv4.2 READ_PLUS code in
5.10,
and due to the changes for the nfsd XDR code. The fixups should be
trivial
but please let me know if you'd prefer that I do so.

Cheers
  Trond

----------------------------------------------------------------
NFS client updates for Linux 5.11

Highlights include:

Features:
- NFSv3: Add emulation of lookupp() to improve open_by_filehandle()
  support.
- A series of patches to improve readdir performance, particularly with
  large directories.
- Basic support for using NFS/RDMA with the pNFS files and flexfiles
  drivers.
- Micro-optimisations for RDMA.
- RDMA tracing improvements.

Bugfixes:
- Fix a long standing bug with xs_read_xdr_buf() when receiving partial
  pages (Dan Aloni).
- Various fixes for getxattr and listxattr, when used over non-TCP
  transports.
- Fixes for containerised NFS from Sargun Dhillon.
- switch nfsiod to be an UNBOUND workqueue (Neil Brown).
- READDIR should not ask for security label information if there is no
  LSM policy. (Olga Kornievskaia)
- Avoid using interval-based rebinding with TCP in lockd (Calum
Mackay).
- A series of RPC and NFS layer fixes to support the NFSv4.2 READ_PLUS
code.
- A couple of fixes for pnfs/flexfiles read failover

Cleanups:
- Various cleanups for the SUNRPC xdr code in conjunction with the
  READ_PLUS fixes.

----------------------------------------------------------------
Calum Mackay (1):
      lockd: don't use interval-based rebinding over TCP

Chuck Lever (16):
      xprtrdma: Replace dprintk call sites in ERR_CHUNK path
      xprtrdma: Introduce Receive completion IDs
      xprtrdma: Introduce Send completion IDs
      xprtrdma: Introduce FRWR completion IDs
      xprtrdma: Clean up trace_xprtrdma_post_linv
      xprtrdma: Clean up reply parsing error tracepoints
      xprtrdma: Clean up tracepoints in the reply path
      xprtrdma: Clean up xprtrdma callback tracepoints
      xprtrdma: Clean up trace_xprtrdma_nomrs()
      xprtrdma: Display the task ID when reporting MR events
      xprtrdma: Trace unmap_sync calls
      xprtrdma: Move rpcrdma_mr_put()
      xprtrdma: Micro-optimize MR DMA-unmapping
      SUNRPC: Remove XDRBUF_SPARSE_PAGES flag in gss_proxy upcall
      NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS
operation
      xprtrdma: Fix XDRBUF_SPARSE_PAGES support

Colin Ian King (1):
      NFSv4.2: fix error return on memory allocation failure

Dai Ngo (1):
      NFSv4.2: Fix 5 seconds delay when doing inter server copy

Dan Aloni (1):
      sunrpc: fix xs_read_xdr_buf for partial pages receive

Fedor Tokarev (1):
      net: sunrpc: Fix 'snprintf' return value check in
'do_xprt_debugfs'

Frank van der Linden (1):
      NFSv4.2: improve page handling for GETXATTR

Geliang Tang (1):
      NFSv4.1: use BITS_PER_LONG macro in nfs4session.h

NeilBrown (1):
      NFS: switch nfsiod to be an UNBOUND workqueue.

Olga Kornievskaia (1):
      NFSv4.2: condition READDIR's mask for security label based on LSM
state

Sargun Dhillon (2):
      NFS: NFSv2/NFSv3: Use cred from fs_context during mount
      NFSv4: Refactor to use user namespaces for nfs4idmap

Trond Myklebust (63):
      NFSv3: Refactor nfs3_proc_lookup() to split out the dentry
      NFSv3: Add emulation of the lookupp() operation
      NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp
      SUNRPC: rpc_wake_up() should wake up tasks in the correct order
      NFS: Ensure contents of struct nfs_open_dir_context are
consistent
      NFS: Clean up readdir struct nfs_cache_array
      NFS: Clean up nfs_readdir_page_filler()
      NFS: Clean up directory array handling
      NFS: Don't discard readdir results
      NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array()
      NFS: Replace kmap() with kmap_atomic() in
nfs_readdir_search_array()
      NFS: Simplify struct nfs_cache_array_entry
      NFS: Support larger readdir buffers
      NFS: More readdir cleanups
      NFS: nfs_do_filldir() does not return a value
      NFS: Reduce readdir stack usage
      NFS: Cleanup to remove nfs_readdir_descriptor_t typedef
      NFS: Allow the NFS generic code to pass in a verifier to readdir
      NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir
calls
      NFS: Improve handling of directory verifiers
      NFS: Optimisations for monotonically increasing readdir cookies
      NFS: Reduce number of RPC calls when doing uncached readdir
      NFS: Do uncached readdir when we're seeking a cookie in an empty
page cache
      SUNRPC: xprt_load_transport() needs to support the netid "rdma6"
      SUNRPC: Close a race with transport setup and module put
      SUNRPC: Add a helper to return the transport identifier given a
netid
      NFS: Switch mount code to use xprt_find_transport_ident()
      SUNRPC: Remove unused function xprt_load_transport()
      NFSv4/pNFS: Use connections to a DS that are all of the same
protocol family
      pNFS: Add helpers for allocation/free of struct nfs4_pnfs_ds_addr
      NFSv4/pNFS: Store the transport type in struct nfs4_pnfs_ds_addr
      pNFS/flexfiles: Fix up layoutstats reporting for non-TCP
transports
      SUNRPC: Fix up open coded kmemdup_nul()
      pNFS: Clean up open coded xdr string decoding
      NFSv4: Fix the alignment of page data in the getdeviceinfo reply
      SUNRPC: Fix up typo in xdr_init_decode()
      SUNRPC: Clean up helpers xdr_set_iov() and xdr_set_page_base()
      SUNRPC: Fix up xdr_read_pages() to take arbitrary object lengths
      SUNRPC: Clean up the handling of page padding in
rpc_prepare_reply_pages()
      SUNRPC: Fix up xdr_set_page()
      SUNRPC: Fix open coded xdr_stream_remaining()
      NFSv4: Fix open coded xdr_stream_remaining()
      NFSv4: Fix a pNFS layout related use-after-free race when freeing
the inode
      NFSv4.2: Fix up the get/listxattr calls to
rpc_prepare_reply_pages()
      SUNRPC: _shift_data_left/right_pages should check the shift
length
      SUNRPC: Fixes for xdr_align_data()
      SUNRPC: Fix xdr_expand_hole()
      SUNRPC: Cleanup xdr_shrink_bufhead()
      SUNRPC: _copy_to/from_pages() now check for zero length
      SUNRPC: Clean up open coded setting of the xdr_stream 'nwords'
field
      SUNRPC: Cleanup - constify a number of xdr_buf helpers
      SUNRPC: When expanding the buffer, we may need grow the sparse
pages
      NFSv4.2: Ensure we always reset the result->count in
decode_read_plus()
      NFSv4.2: decode_read_plus_data() must skip padding after data
segment
      NFSv4.2: decode_read_plus_hole() needs to check the extent offset
      NFSv4.2: Handle hole lengths that exceed the READ_PLUS read
buffer
      NFSv4.2: Don't error when exiting early on a READ_PLUS buffer
overflow
      NFSv4.2: Deal with potential READ_PLUS data extent buffer
overflow
      NFSv4.2/pnfs: Don't use READ_PLUS with pNFS yet
      Merge tag 'nfs-rdma-for-5.11-1' of git://git.linux-
nfs.org/projects/anna/linux-nfs into linux-next
      NFSv4/pnfs: Add tracing for the deviceid cache
      pNFS/flexfiles: Avoid spurious layout returns in
ff_layout_choose_ds_for_read
      NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read()

Zheng Yongjun (1):
      fs/lockd: convert comma to semicolon

 fs/lockd/host.c                        |  22 +-
 fs/nfs/client.c                        |   8 +-
 fs/nfs/dir.c                           | 719 +++++++++++++++++--------
---
 fs/nfs/flexfilelayout/flexfilelayout.c |  17 +-
 fs/nfs/fs_context.c                    |  21 +-
 fs/nfs/inode.c                         |   9 +-
 fs/nfs/internal.h                      |   6 -
 fs/nfs/nfs2xdr.c                       |  19 +-
 fs/nfs/nfs3proc.c                      |  83 ++--
 fs/nfs/nfs3xdr.c                       |  29 +-
 fs/nfs/nfs42proc.c                     |  69 ++-
 fs/nfs/nfs42xdr.c                      | 102 ++--
 fs/nfs/nfs4client.c                    |   2 +-
 fs/nfs/nfs4file.c                      |   2 +-
 fs/nfs/nfs4proc.c                      |  71 +--
 fs/nfs/nfs4session.h                   |   2 +-
 fs/nfs/nfs4super.c                     |   2 +-
 fs/nfs/nfs4trace.h                     |  75 +++
 fs/nfs/nfs4xdr.c                       |  48 +-
 fs/nfs/pnfs.c                          |  33 +-
 fs/nfs/pnfs.h                          |   7 +
 fs/nfs/pnfs_dev.c                      |  23 +-
 fs/nfs/pnfs_nfs.c                      | 105 ++---
 fs/nfs/proc.c                          |  18 +-
 include/linux/nfs_fs.h                 |   9 +-
 include/linux/nfs_xdr.h                |  17 +-
 include/linux/sunrpc/xdr.h             |  26 +-
 include/linux/sunrpc/xprt.h            |   3 +-
 include/trace/events/rpcrdma.h         | 450 +++++++++---------
 net/sunrpc/auth_gss/gss_rpc_upcall.c   |  15 +-
 net/sunrpc/auth_gss/gss_rpc_xdr.c      |   1 -
 net/sunrpc/clnt.c                      |   5 +-
 net/sunrpc/debugfs.c                   |   4 +-
 net/sunrpc/sched.c                     |  65 +--
 net/sunrpc/xdr.c                       | 822 +++++++++++++++++++++----
--------
 net/sunrpc/xprt.c                      | 117 +++--
 net/sunrpc/xprtrdma/backchannel.c      |   6 +-
 net/sunrpc/xprtrdma/frwr_ops.c         |  81 ++--
 net/sunrpc/xprtrdma/module.c           |   1 +
 net/sunrpc/xprtrdma/rpc_rdma.c         |  72 +--
 net/sunrpc/xprtrdma/transport.c        |   8 +-
 net/sunrpc/xprtrdma/verbs.c            |  30 +-
 net/sunrpc/xprtrdma/xprt_rdma.h        |   9 +-
 net/sunrpc/xprtsock.c                  |   7 +-
 44 files changed, 1978 insertions(+), 1262 deletions(-)

-- 
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx






[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux