[GIT PULL] Please pull NFS client changes for 5.7

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

 



Hi Linus,

The following changes since commit fb33c6510d5595144d585aa194d377cf74d31911:

  Linux 5.6-rc6 (2020-03-15 15:01:23 -0700)

are available in the Git repository at:

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

for you to fetch changes up to 93ce4af774bc3d8a72ce2271d03241c96383629d:

  NFS: Clean up process of marking inode stale. (2020-04-06 13:56:33 -0400)

Cheers,
  Trond

----------------------------------------------------------------
NFS client updates for Linux 5.7

Highlights include:

Stable fixes:
- Fix a page leak in nfs_destroy_unlinked_subrequests()
- Fix use-after-free issues in nfs_pageio_add_request()
- Fix new mount code constant_table array definitions
- finish_automount() requires us to hold 2 refs to the mount record

Features:
- Improve the accuracy of telldir/seekdir by using 64-bit cookies when
  possible.
- Allow one RDMA active connection and several zombie connections to
  prevent blocking if the remote server is unresponsive.
- Limit the size of the NFS access cache by default
- Reduce the number of references to credentials that are taken by NFS
- pNFS files and flexfiles drivers now support per-layout segment
  COMMIT lists.
- Enable partial-file layout segments in the pNFS/flexfiles driver.
- Add support for CB_RECALL_ANY to the pNFS flexfiles layout type
- pNFS/flexfiles Report NFS4ERR_DELAY and NFS4ERR_GRACE errors from
  the DS using the layouterror mechanism.

Bugfixes and cleanups:
- SUNRPC: Fix krb5p regressions
- Don't specify NFS version in "UDP not supported" error
- nfsroot: set tcp as the default transport protocol
- pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid()
- alloc_nfs_open_context() must use the file cred when available
- Fix locking when dereferencing the delegation cred
- Fix memory leaks in O_DIRECT when nfs_get_lock_context() fails
- Various clean ups of the NFS O_DIRECT commit code
- Clean up RDMA connect/disconnect
- Replace zero-length arrays with C99-style flexible arrays

----------------------------------------------------------------
Chuck Lever (15):
      sunrpc: Fix gss_unwrap_resp_integ() again
      SUNRPC: Remove xdr_buf_read_mic()
      SUNRPC: Trim stack utilization in the wrap and unwrap paths
      xprtrdma: Enhance MR-related trace points
      xprtrdma: Invoke rpcrdma_ep_create() in the connect worker
      xprtrdma: Refactor frwr_init_mr()
      xprtrdma: Clean up the post_send path
      xprtrdma: Refactor rpcrdma_ep_connect() and rpcrdma_ep_disconnect()
      xprtrdma: Allocate Protection Domain in rpcrdma_ep_create()
      xprtrdma: Invoke rpcrdma_ia_open in the connect worker
      xprtrdma: Remove rpcrdma_ia::ri_flags
      xprtrdma: Disconnect on flushed completion
      xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep
      xprtrdma: Extract sockaddr from struct rdma_cm_id
      xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt

Colin Ian King (1):
      SUNRPC: remove redundant assignments to variable status

Gustavo A. R. Silva (1):
      nfs: Replace zero-length array with flexible-array member

Liwei Song (1):
      nfsroot: set tcp as the default transport protocol

Misono Tomohiro (1):
      NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails

Murphy Zhou (1):
      NFSv4.2: error out when relink swapfile

Olga Kornievskaia (1):
      SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize

Petr Vorel (1):
      NFS: Don't specify NFS version in "UDP not supported" error

Scott Mayhew (1):
      NFS: Fix a few constant_table array definitions

Trond Myklebust (63):
      NFS: Use the 64-bit server readdir cookies when possible
      NFSv4: nfs_update_inplace_delegation() should update delegation cred
      NFSv4/pnfs: pnfs_set_layout_stateid() should update the layout cred
      NFS: Ensure we time out if a delegreturn does not complete
      NFS: alloc_nfs_open_context() must use the file cred when available
      SUNRPC: Add a flag to avoid reference counts on credentials
      SUNRPC: Don't take a reference to the cred on synchronous tasks
      NFS: Assume cred is pinned by open context in I/O requests
      NFSv4: Avoid referencing the cred unnecessarily during NFSv4 I/O
      NFSv4: Avoid unnecessary credential references in layoutget
      NFS: Avoid referencing the cred twice in async rename/unlink
      NFS: Limit the size of the access cache by default
      pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the server
      NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid()
      NFSv4: Ensure layout headers are RCU safe
      NFSv4/pnfs: Clean up nfs_layout_find_inode()
      NFS: Add a helper nfs_client_for_each_server()
      NFSv4: Clean up nfs_client_return_marked_delegations()
      NFSv4: Clean up nfs_delegation_reap_unclaimed()
      NFSv4: Clean up nfs_delegation_reap_expired()
      NFSv4: Add support for CB_RECALL_ANY for flexfiles layouts
      nfs: Fix up documentation in nfs_follow_referral() and nfs_do_submount()
      pNFS/flexfiles: Simplify allocation of the mirror array
      NFS/pNFS: Refactor pnfs_generic_commit_pagelist()
      pNFS: Add a helper to allocate the array of buckets
      NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_info
      NFSv4/pNFS: Scan the full list of commit arrays when committing
      pNFS: Support per-layout segment commits in pnfs_generic_recover_commit_reqs()
      pNFS: Support per-layout segment commits in pnfs_generic_commit_pagelist()
      NFS/pNFS: Allow O_DIRECT to release the DS commitinfo
      NFS: commit errors should be fatal
      NFS: Fix O_DIRECT commit verifier handling
      NFS/pNFS: Support commit arrays in nfs_clear_pnfs_ds_commit_verifiers()
      pNFS: Add infrastructure for cleaning up per-layout commit structures
      pNFS: Enable per-layout segment commit structures
      NFS/pNFS: Add a helper pnfs_generic_search_commit_reqs()
      NFS: Remove bucket array from struct pnfs_ds_commit_info
      NFS/pNFS: Clean up pNFS commit operations
      NFS/pNFS: Simplify bucket layout segment reference counting
      NFS/pNFS: Fix pnfs_layout_mark_request_commit() invalid layout segment handling
      pNFS/flexfile: Don't merge layout segments if the mirrors don't match
      pNFS/flexfiles: Check the layout segment range before doing I/O
      pNFS/flexfiles: remove requirement for whole file layouts
      pNFS/flexfiles: Specify the layout segment range in LAYOUTGET
      NFS: Remove unused FLUSH_SYNC support in nfs_initiate_pgio()
      Merge tag 'nfs-rdma-for-5.7-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
      NFS: Fix a page leak in nfs_destroy_unlinked_subrequests()
      NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests()
      NFS: Fix use-after-free issues in nfs_pageio_add_request()
      NFS: Fix a request reference leak in nfs_direct_write_clear_reqs()
      NFS: Fix memory leaks in nfs_pageio_stop_mirroring()
      NFS: Remove the redundant function nfs_pgio_has_mirroring()
      NFS: Clean up nfs_lock_and_join_requests()
      NFS: Reverse the submission order of requests in __nfs_pageio_add_request()
      NFS: Refactor nfs_lock_and_join_requests()
      NFS: Try to join page groups before an O_DIRECT retransmission
      NFS: finish_automount() requires us to hold 2 refs to the mount record
      NFS: Add a module parameter to set nfs_mountpoint_expiry_timeout
      NFS: Beware when dereferencing the delegation cred
      NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode()
      NFS/pnfs: Reference the layout cred in pnfs_prepare_layoutreturn()
      SUNRPC: Don't start a timer on an already queued rpc task
      NFS: Clean up process of marking inode stale.

Zhouyi Zhou (1):
      NFS:remove redundant call to nfs_do_access

 fs/nfs/blocklayout/blocklayout.c       |   2 +-
 fs/nfs/callback.h                      |   4 +-
 fs/nfs/callback_proc.c                 |  69 ++--
 fs/nfs/delegation.c                    | 319 +++++++--------
 fs/nfs/dir.c                           |  79 ++--
 fs/nfs/direct.c                        | 197 ++++------
 fs/nfs/filelayout/filelayout.c         | 165 +++-----
 fs/nfs/flexfilelayout/flexfilelayout.c | 229 +++++------
 fs/nfs/flexfilelayout/flexfilelayout.h |   2 +-
 fs/nfs/fs_context.c                    |   9 +-
 fs/nfs/inode.c                         |  28 +-
 fs/nfs/internal.h                      |  36 +-
 fs/nfs/namespace.c                     |  67 +++-
 fs/nfs/nfs4_fs.h                       |   4 +-
 fs/nfs/nfs4file.c                      |   3 +
 fs/nfs/nfs4namespace.c                 |   2 +-
 fs/nfs/nfs4proc.c                      |  19 +-
 fs/nfs/nfs4state.c                     |  24 +-
 fs/nfs/nfs4trace.h                     |   8 +-
 fs/nfs/nfsroot.c                       |   2 +-
 fs/nfs/nfstrace.h                      |   1 +
 fs/nfs/pagelist.c                      | 367 +++++++++++-------
 fs/nfs/pnfs.c                          | 241 +++++++++---
 fs/nfs/pnfs.h                          | 143 +++++--
 fs/nfs/pnfs_nfs.c                      | 514 ++++++++++++++++++-------
 fs/nfs/read.c                          |   2 +-
 fs/nfs/super.c                         |  35 ++
 fs/nfs/unlink.c                        |   4 +-
 fs/nfs/write.c                         | 276 +++++++------
 include/linux/nfs_fs.h                 |   1 +
 include/linux/nfs_page.h               |   5 +
 include/linux/nfs_xdr.h                |  32 +-
 include/linux/sunrpc/sched.h           |   1 +
 include/linux/sunrpc/xdr.h             |   1 -
 include/trace/events/rpcrdma.h         | 153 +++-----
 net/sunrpc/auth_gss/auth_gss.c         |  94 +++--
 net/sunrpc/clnt.c                      |   8 +-
 net/sunrpc/sched.c                     |  22 +-
 net/sunrpc/xdr.c                       |  55 ---
 net/sunrpc/xprtrdma/backchannel.c      |   8 +-
 net/sunrpc/xprtrdma/frwr_ops.c         | 154 ++++----
 net/sunrpc/xprtrdma/rpc_rdma.c         |  32 +-
 net/sunrpc/xprtrdma/transport.c        |  72 ++--
 net/sunrpc/xprtrdma/verbs.c            | 683 ++++++++++++---------------------
 net/sunrpc/xprtrdma/xprt_rdma.h        |  89 ++---
 net/sunrpc/xprtsock.c                  |   2 +-
 46 files changed, 2305 insertions(+), 1958 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