2021-11-10 15:38:40

by Trond Myklebust

[permalink] [raw]
Subject: [GIT PULL] Please pull NFS client changes for Linux 5.16

Hi Linus,

The following changes since commit 9e1ff307c779ce1f0f810c7ecce3d95bbae40896:

Linux 5.15-rc4 (2021-10-03 14:08:47 -0700)

are available in the Git repository at:

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

for you to fetch changes up to f96f8cc4a63dd645e07ea9712be4e0a76ea4ec1f:

NFSv4: Sanity check the parameters in nfs41_update_target_slotid() (2021-11-07 09:23:14 -0500)

Cheers,
Trond
----------------------------------------------------------------
NFS client updates for Linux 5.16

Highlights include:

Features:
- NFSv4.1 can always retrieve and cache the ACCESS mode on OPEN
- Optimisations for READDIR and the 'ls -l' style workload
- Further replacements of dprintk() with tracepoints and other tracing
improvements
- Ensure we re-probe NFSv4 server capabilities when the user does a
"mount -o remount"

Bugfixes:
- Fix an Oops in pnfs_mark_request_commit()
- Fix up deadlocks in the commit code
- Fix regressions in NFSv2/v3 attribute revalidation due to the
change_attr_type optimisations
- Fix some dentry verifier races
- Fix some missing dentry verifier settings
- Fix a performance regression in nfs_set_open_stateid_locked()
- SUNRPC was sending multiple SYN calls when re-establishing a TCP
connection.
- Fix multiple NFSv4 issues due to missing sanity checking of server
return values
- Fix a potential Oops when FREE_STATEID races with an unmount

Cleanups:
- Clean up the labelled NFS code
- Remove unused header <linux/pnfs_osd_xdr.h>

----------------------------------------------------------------
Alexey Gladkov (1):
Fix user namespace leak

Anna Schumaker (20):
NFS: Create an nfs4_server_set_init_caps() function
NFS: Move nfs_probe_destination() into the generic client
NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server()
NFS: Call nfs_probe_server() during a fscontext-reconfigure event
NFS: Unexport nfs_probe_fsinfo()
SUNRPC: Check if the xprt is connected before handling sysfs reads
NFS: Create a new nfs_alloc_fattr_with_label() function
NFS: Remove the nfs4_label from the nfs_entry struct
NFS: Remove the nfs4_label from the nfs4_create_res struct
NFS: Remove the nfs4_label from the nfs4_link_res struct
NFS: Remove the label from the nfs4_lookup_res struct
NFS: Remove the nfs4_label from the nfs4_lookupp_res struct
NFS: Remove the f_label from the nfs4_opendata and nfs_openres
NFS: Remove the nfs4_label from the nfs4_getattr_res
NFS: Remove the nfs4_label from the nfs_setattrres
NFS: Remove the nfs4_label argument from nfs_instantiate()
NFS: Remove the nfs4_label argument from nfs_add_or_obtain()
NFS: Remove the nfs4_label argument from nfs_fhget()
NFS: Remove the nfs4_label argument from nfs_setsecurity
NFS: Remove the nfs4_label argument from decode_getattr_*() functions

Baptiste Lepers (1):
pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds

Benjamin Coddington (1):
xprtrdma: Fix a maybe-uninitialized compiler warning

Chuck Lever (12):
NFS: Remove unnecessary TRACE_DEFINE_ENUM()s
SUNRPC: Per-rpc_clnt task PIDs
NFS: Instrument i_size_write()
xprtrdma: Provide a buffer to pad Write chunks of unaligned length
xprtrdma: Remove rpcrdma_ep::re_implicit_roundup
SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field
SUNRPC: Use BIT() macro in rpc_show_xprt_state()
NFS: Replace dprintk callsites in nfs_readpage(s)
SUNRPC: Trace calls to .rpc_call_done
NFS: Remove --> and <-- dprintk call sites
NFS: Move generic FS show macros to global header
NFS: Move NFS protocol display macros to global header

Dave Wysochanski (2):
NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests
NFS: Add offset to nfs_aop_readahead tracepoint

Jonathan Corbet (1):
nfs: remove unused header <linux/pnfs_osd_xdr.h>

Olga Kornievskaia (7):
NFSv4.2 add tracepoint to SEEK
NFSv4.2 add tracepoints to FALLOCATE and DEALLOCATE
NFSv4.2 add tracepoint to COPY
NFSv4.2 add tracepoint to CLONE
NFSv4.2 add tracepoint to CB_OFFLOAD
NFSv4.2 add tracepoint to COPY_NOTIFY
NFSv4.2 add tracepoint to OFFLOAD_CANCEL

Scott Mayhew (1):
nfs4: take a reference on the nfs_client when running FREE_STATEID

Thiago Rafael Becker (1):
sunrpc: remove unnecessary test in rpc_task_set_client()

Trond Myklebust (37):
NFS: Label the dentry with a verifier in nfs_link(), nfs_symlink()
NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink()
NFS: Fix up nfs_ctx_key_to_expire()
SUNRPC: Partial revert of commit 6f9f17287e78
SUNRPC: Add cond_resched() at the appropriate point in __rpc_execute()
SUNRPC: Remove WQ_HIGHPRI from xprtiod
SUNRPC: Remove unnecessary memory barriers
SUNRPC: xprt_clear_locked() only needs release memory semantics
NFS: Fix a few more clear_bit() instances that need release semantics
NFSv4: Retrieve ACCESS on open if we're not using NFS4_CREATE_EXCLUSIVE
NFS: Default change_attr_type to NFS4_CHANGE_TYPE_IS_UNDEFINED
NFS: Don't set NFS_INO_DATA_INVAL_DEFER and NFS_INO_INVALID_DATA
NFS: Ignore the directory size when marking for revalidation
NFS: Fix up nfs_readdir_inode_mapping_valid()
NFS: Further optimisations for 'ls -l'
NFS: Fix dentry verifier races
NFS: Do not flush the readdir cache in nfs_dentry_iput()
NFS: Remove unnecessary page cache invalidations
NFS: Fix deadlocks in nfs_scan_commit_list()
NFS: Fix up commit deadlocks
NFS: Fix an Oops in pnfs_mark_request_commit()
NFSv4: Fixes for nfs4_inode_return_delegation()
NFS: Save some space in the inode
NFS: Remove redundant call to __set_page_dirty_nobuffers
NFSv4: Fix a regression in nfs_set_open_stateid_locked()
SUNRPC: Replace use of socket sk_callback_lock with sock_lock
SUNRPC: Clean up xs_tcp_setup_sock()
SUNRPC: Fix races when closing the socket
SUNRPC: Prevent immediate close+reconnect
NFS: Don't trace an uninitialised value
NFSv4: Ensure decode_compound_hdr() sanity checks the tag
NFSv4: Fix potential Oops in decode_op_map()
NFSv4: Remove unnecessary 'minor version' check
NFS: Don't allocate nfs_fattr on the stack in __nfs42_ssc_open()
NFSv4.2: alloc_file_pseudo() takes an open flag, not an f_mode
NFS: Always initialise fattr->label in nfs_fattr_alloc()
NFSv4: Sanity check the parameters in nfs41_update_target_slotid()

fs/lockd/clntproc.c | 3 -
fs/lockd/svc4proc.c | 2 -
fs/lockd/svcproc.c | 2 -
fs/nfs/callback_proc.c | 3 +
fs/nfs/client.c | 39 +-
fs/nfs/delegation.c | 10 +-
fs/nfs/dir.c | 119 ++--
fs/nfs/direct.c | 2 +-
fs/nfs/export.c | 44 +-
fs/nfs/filelayout/filelayout.c | 2 -
fs/nfs/flexfilelayout/flexfilelayout.c | 2 -
fs/nfs/flexfilelayout/flexfilelayoutdev.c | 4 +-
fs/nfs/getroot.c | 21 +-
fs/nfs/inode.c | 130 +++--
fs/nfs/internal.h | 12 +-
fs/nfs/namespace.c | 3 +-
fs/nfs/nfs3proc.c | 10 +-
fs/nfs/nfs3xdr.c | 2 +-
fs/nfs/nfs42proc.c | 9 +
fs/nfs/nfs4_fs.h | 4 +-
fs/nfs/nfs4client.c | 65 +--
fs/nfs/nfs4file.c | 14 +-
fs/nfs/nfs4idmap.c | 2 +-
fs/nfs/nfs4proc.c | 289 ++++------
fs/nfs/nfs4session.c | 12 +-
fs/nfs/nfs4session.h | 1 +
fs/nfs/nfs4state.c | 5 +-
fs/nfs/nfs4trace.h | 920 ++++++++++++++++--------------
fs/nfs/nfs4xdr.c | 81 ++-
fs/nfs/nfstrace.h | 467 +++++++--------
fs/nfs/pagelist.c | 13 +-
fs/nfs/pnfs.h | 6 +-
fs/nfs/pnfs_nfs.c | 6 +-
fs/nfs/proc.c | 16 +-
fs/nfs/read.c | 11 +-
fs/nfs/super.c | 7 +-
fs/nfs/write.c | 73 +--
fs/nfsd/trace.h | 1 +
include/linux/nfs4.h | 4 +
include/linux/nfs_fs.h | 77 ++-
include/linux/nfs_xdr.h | 16 +-
include/linux/pnfs_osd_xdr.h | 317 ----------
include/linux/sunrpc/clnt.h | 1 +
include/linux/sunrpc/sched.h | 16 +-
include/trace/events/fs.h | 122 ++++
include/trace/events/nfs.h | 375 ++++++++++++
include/trace/events/rpcgss.h | 18 +-
include/trace/events/rpcrdma.h | 55 +-
include/trace/events/sunrpc.h | 99 ++--
include/trace/events/sunrpc_base.h | 18 +
net/sunrpc/clnt.c | 33 +-
net/sunrpc/sched.c | 20 +-
net/sunrpc/sysfs.c | 12 +-
net/sunrpc/xprt.c | 41 +-
net/sunrpc/xprtrdma/frwr_ops.c | 48 +-
net/sunrpc/xprtrdma/rpc_rdma.c | 23 +-
net/sunrpc/xprtrdma/verbs.c | 3 +-
net/sunrpc/xprtrdma/xprt_rdma.h | 6 +-
net/sunrpc/xprtsock.c | 109 ++--
59 files changed, 2011 insertions(+), 1814 deletions(-)
delete mode 100644 include/linux/pnfs_osd_xdr.h
create mode 100644 include/trace/events/fs.h
create mode 100644 include/trace/events/nfs.h
create mode 100644 include/trace/events/sunrpc_base.h

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
[email protected]



2021-11-11 01:07:59

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Please pull NFS client changes for Linux 5.16

The pull request you sent on Wed, 10 Nov 2021 15:37:39 +0000:

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

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/2ec20f489591962db8ff1718aa6055c08d88d0cc

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html