• Linus Torvalds's avatar
    Merge tag 'nfsd-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux · 76482297
    Linus Torvalds authored
    Pull nfsd updates from Chuck Lever:
     "This release introduces support for the CB_RECALL_ANY operation. NFSD
      can send this operation to request that clients return any delegations
      they choose. The server uses this operation to handle low memory
      scenarios or indicate to a client when that client has reached the
      maximum number of delegations the server supports.
    
      The NFSv4.2 READ_PLUS operation has been simplified temporarily whilst
      support for sparse files in local filesystems and the VFS is improved.
    
      Two major data structure fixes appear in this release:
    
       - The nfs4_file hash table is replaced with a resizable hash table to
         reduce the latency of NFSv4 OPEN operations.
    
       - Reference counting in the NFSD filecache has been hardened against
         races.
    
      In furtherance of removing support for NFSv2 in a subsequent kernel
      release, a new Kconfig option enables server-side support for NFSv2 to
      be left out of a kernel build.
    
      MAINTAINERS has been updated to indicate that changes to fs/exportfs
      should go through the NFSD tree"
    
    * tag 'nfsd-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux: (49 commits)
      NFSD: Avoid clashing function prototypes
      SUNRPC: Fix crasher in unwrap_integ_data()
      SUNRPC: Make the svc_authenticate tracepoint conditional
      NFSD: Use only RQ_DROPME to signal the need to drop a reply
      SUNRPC: Clean up xdr_write_pages()
      SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails
      NFSD: add CB_RECALL_ANY tracepoints
      NFSD: add delegation reaper to react to low memory condition
      NFSD: add support for sending CB_RECALL_ANY
      NFSD: refactoring courtesy_client_reaper to a generic low memory shrinker
      trace: Relocate event helper files
      NFSD: pass range end to vfs_fsync_range() instead of count
      lockd: fix file selection in nlmsvc_cancel_blocked
      lockd: ensure we use the correct file descriptor when unlocking
      lockd: set missing fl_flags field when retrieving args
      NFSD: Use struct_size() helper in alloc_session()
      nfsd: return error if nfs4_setacl fails
      lockd: set other missing fields when unlocking files
      NFSD: Add an nfsd_file_fsync tracepoint
      sunrpc: svc: Remove an unused static function svc_ungetu32()
      ...
    76482297
vfs.c 58.8 KB