[GIT PULL] Please pull NFS client updates for Linux 5.9

From: Trond Myklebust
Date: Fri Aug 14 2020 - 18:04:09 EST


Hi Linus,

The following changes since commit c1326210477ecc06c53221f0005c64419aba30d6:

nfs,nfsd: NFSv4.2 extended attribute protocol definitions (2020-07-13 17:20:49 -0400)

are available in the Git repository at:

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

for you to fetch changes up to 563c53e73b8b6ec842828736f77e633f7b0911e9:

NFS: Fix flexfiles read failover (2020-08-12 11:20:29 -0400)

Cheers
Trond

----------------------------------------------------------------
NFS client updates for Linux 5.9

Highlights include:

Stable fixes:
- pNFS: Don't return layout segments that are being used for I/O
- pNFS: Don't move layout segments off the active list when being used for I/O

Features:
- NFS: Add support for user xattrs through the NFSv4.2 protocol
- NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC
- NFSv4.0 allow nconnect for v4.0

Bugfixes and cleanups:
- nfs: ensure correct writeback errors are returned on close()
- nfs: nfs_file_write() should check for writeback errors
- nfs: Fix getxattr kernel panic and memory overflow
- NFS: Fix the pNFS/flexfiles mirrored read failover code
- SUNRPC: dont update timeout value on connection reset
- freezer: Add unsafe versions of freezable_schedule_timeout_interruptible for NFS
- sunrpc: destroy rpc_inode_cachep after unregister_filesystem

----------------------------------------------------------------
Colin Ian King (1):
NFS: remove redundant initialization of variable result

Dan Aloni (1):
sunrpc: destroy rpc_inode_cachep after unregister_filesystem

Frank van der Linden (13):
nfs: add client side only definitions for user xattrs
NFSv4.2: define limits and sizes for user xattr handling
NFSv4.2: query the server for extended attribute support
NFSv4.2: add client side XDR handling for extended attributes
nfs: define nfs_access_get_cached function
NFSv4.2: query the extended attribute access bits
nfs: modify update_changeattr to deal with regular files
nfs: define and use the NFS_INO_INVALID_XATTR flag
nfs: make the buf_to_pages_noslab function available to the nfs code
NFSv4.2: add the extended attribute proc functions.
NFSv4.2: hook in the user extended attribute handlers
NFSv4.2: add client side xattr caching.
NFSv4.2: xattr cache: get rid of cache discard work queue

He Zhe (1):
freezer: Add unsafe versions of freezable_schedule_timeout_interruptible for NFS

Jeffrey Mitchell (1):
nfs: Fix getxattr kernel panic and memory overflow

Olga Kornievskaia (2):
NFSv4.0 allow nconnect for v4.0
SUNRPC dont update timeout value on connection reset

Randy Dunlap (1):
fs: nfs: delete repeated words in comments

Scott Mayhew (2):
nfs: ensure correct writeback errors are returned on close()
nfs: nfs_file_write() should check for writeback errors

Trond Myklebust (11):
NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC
pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg()
pNFS/flexfiles: The mirror count could depend on the layout segment range
Merge commit 'c1326210477ecc06c53221f0005c64419aba30d6' from nfsd/linux-next
Merge branch 'xattr-devel'
NFS: Report the stateid + status in trace_nfs4_layoutreturn_on_close()
NFS: Add tracepoints for layouterror and layoutstats.
NFS: Add layout segment info to pnfs read/write/commit tracepoints
NFS: Don't move layouts to plh_return_segs list while in use
NFS: Don't return layout segments that are in use
NFS: Fix flexfiles read failover

Xu Wang (1):
rpc_pipefs: convert comma to semicolon

fs/nfs/Makefile | 2 +-
fs/nfs/blocklayout/rpc_pipefs.c | 2 +-
fs/nfs/client.c | 22 +-
fs/nfs/dir.c | 24 +-
fs/nfs/direct.c | 2 +-
fs/nfs/file.c | 17 +-
fs/nfs/flexfilelayout/flexfilelayout.c | 64 +-
fs/nfs/fs_context.c | 2 +-
fs/nfs/inode.c | 20 +-
fs/nfs/nfs42.h | 24 +
fs/nfs/nfs42proc.c | 258 +++++++-
fs/nfs/nfs42xattr.c | 1056 ++++++++++++++++++++++++++++++++
fs/nfs/nfs42xdr.c | 438 +++++++++++++
fs/nfs/nfs4_fs.h | 35 ++
fs/nfs/nfs4client.c | 33 +-
fs/nfs/nfs4file.c | 5 +-
fs/nfs/nfs4proc.c | 241 +++++++-
fs/nfs/nfs4super.c | 10 +
fs/nfs/nfs4trace.h | 46 +-
fs/nfs/nfs4xdr.c | 39 +-
fs/nfs/nfstrace.h | 3 +-
fs/nfs/pnfs.c | 52 +-
fs/nfs/pnfs.h | 2 +-
include/linux/freezer.h | 14 +
include/linux/nfs4.h | 5 +
include/linux/nfs_fs.h | 12 +
include/linux/nfs_fs_sb.h | 6 +
include/linux/nfs_xdr.h | 60 +-
include/linux/sunrpc/xprt.h | 1 +
include/uapi/linux/nfs_fs.h | 1 +
net/sunrpc/rpc_pipe.c | 2 +-
net/sunrpc/xprt.c | 9 +
32 files changed, 2383 insertions(+), 124 deletions(-)
create mode 100644 fs/nfs/nfs42xattr.c

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx