Hi Linus, The following changes since commit a99d8080aaf358d5d23581244e5da23b35e340b9: Linux 5.4-rc6 (2019-11-03 14:07:26 -0800) are available in the Git repository at: git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-5.5-1 for you to fetch changes up to a264abad51d8ecb7954a2f6d9f1885b38daffc74: SUNRPC: Capture completion of all RPC tasks (2019-11-22 19:09:38 +0100) ---------------------------------------------------------------- NFS client updates for Linux 5.5 Highlights include: Features: - NFSv4.2 now supports cross device offloaded copy (i.e. offloaded copy of a file from one source server to a different target server). - New RDMA tracepoints for debugging congestion control and Local Invalidate WRs. Bugfixes and cleanups - Drop the NFSv4.1 session slot if nfs4_delegreturn_prepare waits for layoutreturn - Handle bad/dead sessions correctly in nfs41_sequence_process() - Various bugfixes to the delegation return operation. - Various bugfixes pertaining to delegations that have been revoked. - Cleanups to the NFS timespec code to avoid unnecessary conversions between timespec and timespec64. - Fix unstable RDMA connections after a reconnect - Close race between waking an RDMA sender and posting a receive - Wake pending RDMA tasks if connection fails - Fix MR list corruption, and clean up MR usage - Fix another RPCSEC_GSS issue with MIC buffer space ---------------------------------------------------------------- Anna Schumaker (2): NFS: Return -ETXTBSY when attempting to write to a swapfile NFS: Fallocate should use the nfs4_fattr_bitmap Ben Dooks (1): NFSv4: add declaration of current_stateid Chuck Lever (23): SUNRPC: Eliminate log noise in call_reserveresult SUNRPC: Add trace points to observe transport congestion control xprtrdma: Add unique trace points for posting Local Invalidate WRs xprtrdma: Connection becomes unstable after a reconnect xprtrdma: Initialize rb_credits in one place xprtrdma: Close window between waking RPC senders and posting Receives xprtrdma: Fix MR list handling xprtrdma: Manage MRs in context of a single connection xprtrdma: Ensure ri_id is stable during MR recycling xprtrdma: Remove rpcrdma_sendctx::sc_xprt xprtrdma: Remove rpcrdma_sendctx::sc_device xprtrdma: Move the rpcrdma_sendctx::sc_wr field xprtrdma: Refactor rpcrdma_prepare_msg_sges() xprtrdma: Pull up sometimes xprtrdma: Wake tasks after connect worker fails xprtrdma: Report the computed connect delay xprtrdma: Refine trace_xprtrdma_fixup xprtrdma: Replace dprintk() in rpcrdma_update_connect_private() xprtrdma: Replace dprintk in xprt_rdma_set_port NFS4: Trace state recovery operation NFS4: Trace lock reclaims SUNRPC: Fix another issue with MIC buffer space SUNRPC: Capture completion of all RPC tasks Olga Kornievskaia (14): NFS NFSD: defining nl4_servers structure needed by both NFS: add COPY_NOTIFY operation NFS: add ca_source_server<> to COPY NFS: inter ssc open NFS: skip recovery of copy open on dest server NFS: for "inter" copy treat ESTALE as ENOTSUPP NFS: COPY handle ERR_OFFLOAD_DENIED NFS: also send OFFLOAD_CANCEL to source server NFS handle NFS4ERR_PARTNER_NO_AUTH error NFS: handle source server reboot NFS based on file size issue sync copy or fallback to generic copy offload NFS: replace cross device check in copy_file_range NFSv4.2 fix kfree in __nfs42_copy_file_range NFSv4.2 fix memory leak in nfs42_ssc_open Saurav Girepunje (1): fs: nfs: sysfs: Remove NULL check before kfree Trond Myklebust (37): NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts NFS: Convert struct nfs_fattr to use struct timespec64 NFSv4: Encode 64-bit timestamps NFSv4: NFSv4 callbacks also support 64-bit timestamps NFSv2: Fix a typo in encode_sattr() NFSv2: Clean up timespec encode NFSv3: Clean up timespec encode NFS: Use non-atomic bit ops when initialising struct nfs_client_initdata NFS: Add a flag to tell nfs_client to set RPC_CLNT_CREATE_NOPING pNFS: nfs3_set_ds_client should set NFS_CS_NOPING NFS/pnfs: Separate NFSv3 DS and MDS traffic NFSv4.1: Don't rebind to the same source port when reconnecting to the server NFSv4: Fix delegation handling in update_open_stateid() NFSv4: nfs4_callback_getattr() should ignore revoked delegations NFSv4: Delegation recalls should not find revoked delegations NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked NFS: Rename nfs_inode_return_delegation_noreclaim() NFSv4: Don't remove the delegation from the super_list more than once NFSv4: Hold the delegation spinlock when updating the seqid NFSv4: Clear the NFS_DELEGATION_REVOKED flag in nfs_update_inplace_delegation() NFSv4: Update the stateid seqid in nfs_revoke_delegation() NFSv4: Revoke the delegation on success in nfs4_delegreturn_done() NFSv4: Ignore requests to return the delegation if it was revoked NFSv4: Don't reclaim delegations that have been returned or revoked NFSv4: nfs4_return_incompatible_delegation() should check delegation validity NFSv4: Fix nfs4_inode_make_writeable() NFS: nfs_inode_find_state_and_recover() fix stateid matching NFSv4: Fix races between open and delegreturn NFSv4: Handle NFS4ERR_OLD_STATEID in delegreturn NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done() NFS: Add a tracepoint in nfs_fh_to_dentry() SUNRPC: Avoid RPC delays when exiting suspend Merge branch 'linux-ssc-for-5.5' nfsv4: Move NFSPROC4_CLNT_COPY_NOTIFY to end of list NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process() NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn Merge tag 'nfs-rdma-for-5.5-1' of git://git.linux-nfs.org/projects/anna/linux-nfs YueHaibing (3): NFS: remove unneeded semicolon NFSv4: Make _nfs42_proc_copy_notify() static NFS: remove duplicated include from nfs4file.c fs/lockd/host.c | 3 +- fs/nfs/callback.h | 4 +- fs/nfs/callback_proc.c | 8 +- fs/nfs/callback_xdr.c | 6 +- fs/nfs/client.c | 11 + fs/nfs/delegation.c | 158 ++++++++++----- fs/nfs/delegation.h | 3 +- fs/nfs/export.c | 1 + fs/nfs/file.c | 2 +- fs/nfs/inode.c | 54 ++--- fs/nfs/internal.h | 2 +- fs/nfs/namespace.c | 3 + fs/nfs/nfs2xdr.c | 21 +- fs/nfs/nfs3client.c | 5 +- fs/nfs/nfs3xdr.c | 14 +- fs/nfs/nfs42.h | 15 +- fs/nfs/nfs42proc.c | 201 ++++++++++++++++--- fs/nfs/nfs42xdr.c | 190 +++++++++++++++++- fs/nfs/nfs4_fs.h | 21 +- fs/nfs/nfs4client.c | 13 +- fs/nfs/nfs4file.c | 141 ++++++++++++- fs/nfs/nfs4proc.c | 69 ++++--- fs/nfs/nfs4state.c | 51 ++++- fs/nfs/nfs4super.c | 4 +- fs/nfs/nfs4trace.h | 175 ++++++++++++++++ fs/nfs/nfs4xdr.c | 24 +-- fs/nfs/nfstrace.h | 33 +++ fs/nfs/pnfs.c | 2 - fs/nfs/super.c | 6 +- fs/nfs/sysfs.c | 3 +- include/linux/nfs4.h | 26 +++ include/linux/nfs_fs.h | 4 +- include/linux/nfs_fs_sb.h | 6 +- include/linux/nfs_xdr.h | 31 ++- include/linux/sunrpc/clnt.h | 1 + include/linux/sunrpc/xprt.h | 3 +- include/trace/events/rpcrdma.h | 198 ++++++++++++------ include/trace/events/sunrpc.h | 94 +++++++++ net/sunrpc/clnt.c | 21 +- net/sunrpc/sched.c | 3 +- net/sunrpc/xdr.c | 11 +- net/sunrpc/xprt.c | 22 +- net/sunrpc/xprtrdma/backchannel.c | 2 +- net/sunrpc/xprtrdma/frwr_ops.c | 53 +---- net/sunrpc/xprtrdma/rpc_rdma.c | 413 +++++++++++++++++++++++++------------- net/sunrpc/xprtrdma/transport.c | 33 +-- net/sunrpc/xprtrdma/verbs.c | 194 ++++++++++-------- net/sunrpc/xprtrdma/xprt_rdma.h | 18 +- net/sunrpc/xprtsock.c | 2 +- 49 files changed, 1756 insertions(+), 622 deletions(-) -- Trond Myklebust Linux NFS client maintainer, Hammerspace trond.myklebust@xxxxxxxxxxxxxxx