Hi Linus, The following changes since commit d1abaeb3be7b5fa6d7a1fbbd2e14e3310005c4c1: Linux 5.3-rc5 (2019-08-18 14:31:08 -0700) are available in the Git repository at: git://git.linux-nfs.org/projects/anna/linux-nfs.git tags/nfs-for-5.4-1 for you to fetch changes up to a8fd0feeca35cb8f9ddd950191f4aeb777f52f89: pNFS/filelayout: enable LAYOUTGET on OPEN (2019-09-24 16:28:38 -0400) ---------------------------------------------------------------- Stable bugfixes: - Dequeue the request from the receive queue while we're re-encoding # v4.20+ - Fix buffer handling of GSS MIC without slack # 5.1 Features: - Increase xprtrdma maximum transport header and slot table sizes - Add support for nfs4_call_sync() calls using a custom rpc_task_struct - Optimize the default readahead size - Enable pNFS filelayout LAYOUTGET on OPEN Other bugfixes and cleanups: - Fix possible null-pointer dereferences and memory leaks - Various NFS over RDMA cleanups - Various NFS over RDMA comment updates - Don't receive TCP data into a reset request buffer - Don't try to parse incomplete RPC messages - Fix congestion window race with disconnect - Clean up pNFS return-on-close error handling - Fixes for NFS4ERR_OLD_STATEID handling Thanks, Anna ---------------------------------------------------------------- Anna Schumaker (6): NFS: Add an nfs4_call_sync_custom() function NFS: Have nfs4_proc_setclientid() call nfs4_call_sync_custom() NFS: Have _nfs4_proc_secinfo() call nfs4_call_sync_custom() NFS: Have nfs41_proc_reclaim_complete() call nfs4_call_sync_custom() NFS: Have nfs41_proc_secinfo_no_name() call nfs4_call_sync_custom() NFS: Have nfs4_proc_get_lease_time() call nfs4_call_sync_custom() Benjamin Coddington (5): SUNRPC: Fix buffer handling of GSS MIC without slack SUNRPC: Rename xdr_buf_read_netobj to xdr_buf_read_mic NFS: Refactor nfs_instantiate() for dentry referencing callers NFSv3: use nfs_add_or_obtain() to create and reference inodes NFS: remove unused check for negative dentry Chuck Lever (25): SUNRPC: Remove rpc_wake_up_queued_task_on_wq() SUNRPC: Inline xdr_commit_encode xprtrdma: Refresh the documenting comment in frwr_ops.c xprtrdma: Update obsolete comment xprtrdma: Fix calculation of ri_max_segs again xprtrdma: Boost maximum transport header size xprtrdma: Boost client's max slot table size to match Linux server xprtrdma: Rename CQE field in Receive trace points xprtrdma: Rename rpcrdma_buffer::rb_all xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods xprtrdma: Simplify rpcrdma_mr_pop xprtrdma: Combine rpcrdma_mr_put and rpcrdma_mr_unmap_and_put xprtrdma: Move rpcrdma_mr_get out of frwr_map xprtrdma: Ensure creating an MR does not trigger FS writeback xprtrdma: Cache free MRs in each rpcrdma_req xprtrdma: Remove rpcrdma_buffer::rb_mrlock xprtrdma: Use an llist to manage free rpcrdma_reps xprtrdma: Clean up xprt_rdma_set_connect_timeout() xprtrdma: Fix bc_max_slots return value xprtrdma: Inline XDR chunk encoder functions xprtrdma: Optimize rpcrdma_post_recvs() xprtrdma: Recycle MRs after disconnect xprtrdma: Clear xprt->reestablish_timeout on close xprtrdma: Send Queue size grows after a reconnect SUNRPC: Fix congestion window race with disconnect Jia-Ju Bai (1): fs: nfs: Fix possible null-pointer dereferences in encode_attrs() Olga Kornievskaia (1): pNFS/filelayout: enable LAYOUTGET on OPEN Trond Myklebust (14): SUNRPC: Dequeue the request from the receive queue while we're re-encoding SUNRPC: Don't receive TCP data into a request buffer that has been reset SUNRPC: RPC level errors should always set task->tk_rpc_status SUNRPC: Don't try to parse incomplete RPC messages pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors NFSv4: Clean up pNFS return-on-close error handling NFSv4: Handle NFS4ERR_DELAY correctly in return-on-close NFSv4: Handle RPC level errors in LAYOUTRETURN NFSv4: Add a helper to increment stateid seqids pNFS: Handle NFS4ERR_OLD_STATEID on layoutreturn by bumping the state seqid NFSv4: Fix OPEN_DOWNGRADE error handling NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE NFSv4: Handle NFS4ERR_OLD_STATEID in LOCKU NFS: Optimise the default readahead size Wenwen Wang (1): NFSv4: Fix a memory leak bug fs/nfs/dir.c | 41 +++-- fs/nfs/filelayout/filelayout.c | 1 + fs/nfs/internal.h | 8 - fs/nfs/nfs3proc.c | 45 ++++-- fs/nfs/nfs4_fs.h | 11 +- fs/nfs/nfs4proc.c | 315 ++++++++++++++++++++++++-------------- fs/nfs/nfs4state.c | 22 +-- fs/nfs/nfs4xdr.c | 2 +- fs/nfs/pnfs.c | 71 ++++++++- fs/nfs/pnfs.h | 17 +- fs/nfs/super.c | 9 +- include/linux/nfs_fs.h | 3 + include/linux/sunrpc/sched.h | 3 - include/linux/sunrpc/xdr.h | 2 +- include/linux/sunrpc/xprt.h | 1 + include/linux/sunrpc/xprtrdma.h | 4 +- include/trace/events/rpcrdma.h | 88 +++++++++-- net/sunrpc/auth_gss/auth_gss.c | 2 +- net/sunrpc/clnt.c | 26 +++- net/sunrpc/sched.c | 32 +--- net/sunrpc/xdr.c | 65 +++++--- net/sunrpc/xprt.c | 61 +++++--- net/sunrpc/xprtrdma/backchannel.c | 4 +- net/sunrpc/xprtrdma/frwr_ops.c | 166 +++++++++----------- net/sunrpc/xprtrdma/rpc_rdma.c | 71 ++++++--- net/sunrpc/xprtrdma/transport.c | 15 +- net/sunrpc/xprtrdma/verbs.c | 263 ++++++++++++++----------------- net/sunrpc/xprtrdma/xprt_rdma.h | 59 ++++--- net/sunrpc/xprtsock.c | 8 +- 29 files changed, 835 insertions(+), 580 deletions(-)