From: Trond Myklebust <trondmy@hammerspace.com>
To: "torvalds@linux-foundation.org" <torvalds@linux-foundation.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-nfs@vger.kernel.org" <linux-nfs@vger.kernel.org>
Subject: [GIT PULL] Please pull NFS client updates for Linux 5.1
Date: Tue, 12 Mar 2019 11:46:27 +0000 [thread overview]
Message-ID: <96ed9b50bba1d5d2929f42f41109e122d6aac5e9.camel@hammerspace.com> (raw)
Hi Linus,
The following changes since commit 2137397c92aec3713fa10be3c9b830f9a1674e60:
Merge tag 'sound-5.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound (2019-02-20 09:42:52 -0800)
are available in the Git repository at:
git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-5.1-1
for you to fetch changes up to 4d6c671ace569d4b0d3f8d92ab3aef18a5d166bc:
SUNRPC: Take the transport send lock before binding+connecting (2019-03-10 14:08:19 -0400)
----------------------------------------------------------------
NFS client updates for Linux 5.1
Highlights include:
Stable fixes:
- Fixes for NFS I/O request leakages
- Fix error handling paths in the NFS I/O recoalescing code
- Reinitialise NFSv4.1 sequence results before retransmitting a request
- Fix a soft lockup in the delegation recovery code
- Bulk destroy of layouts needs to be safe w.r.t. umount
- Prevent thundering herd issues when the SUNRPC socket is not connected
- Respect RPC call timeouts when retrying transmission
Features:
- Convert rpc auth layer to use xdr_streams
- Config option to disable insecure RPCSEC_GSS crypto types
- Reduce size of RPC receive buffers
- Readdirplus optimization by cache mechanism
- Convert SUNRPC socket send code to use iov_iter()
- SUNRPC micro-optimisations to avoid indirect calls
- Add support for the pNFS LAYOUTERROR operation and use it with the
pNFS/flexfiles driver
- Add trace events to report non-zero NFS status codes
- Various removals of unnecessary dprintks
Bugfixes and cleanups:
- Fix a number of sparse warnings and documentation format warnings
- Fix nfs_parse_devname to not modify it's argument
- Fix potential corruption of page being written through pNFS/blocks
- fix xfstest generic/099 failures on nfsv3
- Avoid NFSv4.1 "false retries" when RPC calls are interrupted
- Abort I/O early if the pNFS/flexfiles layout segment was invalidated
- Avoid unnecessary pNFS/flexfiles layout invalidations
----------------------------------------------------------------
Anna Schumaker (1):
NFS: Add missing encode / decode sequence_maxsz to v4.2 operations
Chuck Lever (23):
xprtrdma: Fix sparse warnings
xprtrdma: Check inline size before providing a Write chunk
xprtrdma: Reduce the doorbell rate (Receive)
SUNRPC: Display symbolic flag names in RPC trace events
SUNRPC: Add xdr_stream::rqst field
SUNRPC: Add XDR overflow trace event
SUNRPC: Add trace event that reports reply page vector alignment
NFS: Remove print_overflow_msg()
NFS: Add trace events to report non-zero NFS status codes
SUNRPC: Remove some dprintk() call sites from auth functions
SUNRPC: Remove rpc_xprt::tsh_size
SUNRPC: Add build option to disable support for insecure enctypes
SUNRPC: Use struct xdr_stream when constructing RPC Call header
SUNRPC: Clean up rpc_verify_header()
SUNRPC: Use struct xdr_stream when decoding RPC Reply header
SUNRPC: Introduce trace points in rpc_auth_gss.ko
SUNRPC: Remove xdr_buf_trim()
SUNRPC: Add SPDX IDs to some net/sunrpc/auth_gss/ files
SUNRPC: Introduce rpc_prepare_reply_pages()
NFS: Account for XDR pad of buf->pages
SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize
SUNRPC: Add rpc_auth::au_ralign field
SUNRPC: Use au_rslack when computing reply buffer size
Eric W. Biederman (1):
fs/nfs: Fix nfs_parse_devname to not modify it's argument
Julia Lawall (1):
NFS: drop useless LIST_HEAD
Kazuo Ito (2):
pNFS: Fix potential corruption of page being written
pNFS: Avoid read/modify/write when it is not necessary
NeilBrown (1):
SUNRPC: remove pointless test in unx_match()
Trond Myklebust (58):
NFS: Fix I/O request leakages
NFS: Fix an I/O request leakage in nfs_do_recoalesce
NFS: Don't recoalesce on error in nfs_pageio_complete_mirror()
NFS: Clean up list moves of struct nfs_page
NFS: Pass error information to the pgio error cleanup routine
NFS: Ensure NFS writeback allocations don't recurse back into NFS.
NFS: EINTR is also a fatal error.
NFS: ENOMEM should also be a fatal error.
NFS: Fix up documentation warnings
NFS: Fix sparse annotations for nfs_set_open_stateid_locked()
SUNRPC: Set memalloc_nofs_save() on all rpciod/xprtiod jobs
SUNRPC: Use poll() to fix up the socket requeue races
SUNRPC: Ensure rq_bytes_sent is reset before request transmission
SUNRPC: Don't reset the stream record info when the receive worker is running
SUNRPC: Handle zero length fragments correctly
SUNRPC: Don't suppress socket errors when a message read completes
SUNRPC: Initiate a connection close on an ESHUTDOWN error in stream receive
SUNRPC: Convert xs_send_kvec() to use iov_iter_kvec()
SUNRPC: Convert socket page send code to use iov_iter()
SUNRPC: Further cleanups of xs_sendpages()
SUNRPC: Remove the redundant 'zerocopy' argument to xs_sendpages()
NFSv4.1: Avoid false retries when RPC calls are interrupted
NFS: Fix a soft lockup in the delegation recovery code
NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount
Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
SUNRPC: Fix an Oops in udp_poll()
NFSv4.1: Reinitialise sequence results before retransmitting a request
NFSv4.1: Don't process the sequence op more than once.
NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE()
NFS/flexfiles: Fix up sparse RCU annotations
NFSv4/pnfs: Fix barriers in nfs4_mark_deviceid_unavailable()
NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated
NFSv4.2: Add client support for the generic 'layouterror' RPC call
NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads
NFSv4: Handle early exit in layoutget by returning an error
NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds()
NFS/flexfiles: Avoid unnecessary layout invalidations
NFS/flexfiles: Remove bogus checks for invalid deviceids
NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive
NFS/flexfiles: Speed up read failover when DSes are down
NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh()
NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client()
NFS/flexfiles: Simplify ff_layout_get_ds_cred()
NFS/flexfile: Simplify nfs4_ff_layout_ds_version()
NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid()
NFS/flexfiles: Remove dead code in ff_layout_mirror_valid()
NFS/flexfiles: Clean up mirror DS initialisation
SUNRPC: Convert remaining GFP_NOIO, and GFP_NOWAIT sites in sunrpc
NFSv4.1: Bump the default callback session slot count to 16
SUNRPC: Allow dynamic allocation of back channel slots
SUNRPC: Prevent thundering herd when the socket is not connected
SUNRPC: Fix up RPC back channel transmission
SUNRPC: Respect RPC call timeouts when retrying transmission
SUNRPC: Clean up
SUNRPC: Remove redundant calls to RPC_IS_QUEUED()
SUNRPC: Check whether the task was transmitted before rebind/reconnect
SUNRPC: Micro-optimise when the task is known not to be sleeping
SUNRPC: Take the transport send lock before binding+connecting
ZhangXiaoxu (1):
nfs: fix xfstest generic/099 failed on nfsv3
luanshi (1):
NFS: readdirplus optimization by cache mechanism
zhangliguang (2):
NFS: Remove redundant semicolon
NFS: Fix typo in comments of nfs_readdir_alloc_pages()
fs/lockd/clnt4xdr.c | 14 -
fs/lockd/clntxdr.c | 14 -
fs/nfs/callback_xdr.c | 64 ++-
fs/nfs/delegation.c | 22 +-
fs/nfs/delegation.h | 1 +
fs/nfs/dir.c | 98 ++++-
fs/nfs/direct.c | 7 +-
fs/nfs/file.c | 44 +-
fs/nfs/flexfilelayout/flexfilelayout.c | 225 +++++++---
fs/nfs/flexfilelayout/flexfilelayout.h | 75 ++--
fs/nfs/flexfilelayout/flexfilelayoutdev.c | 161 +++----
fs/nfs/inode.c | 33 +-
fs/nfs/internal.h | 5 +-
fs/nfs/io.c | 12 +-
fs/nfs/namespace.c | 8 +-
fs/nfs/nfs2xdr.c | 124 ++----
fs/nfs/nfs3acl.c | 2 -
fs/nfs/nfs3xdr.c | 209 +++------
fs/nfs/nfs42.h | 3 +
fs/nfs/nfs42proc.c | 164 +++++++
fs/nfs/nfs42xdr.c | 130 +++++-
fs/nfs/nfs4client.c | 33 +-
fs/nfs/nfs4namespace.c | 5 +-
fs/nfs/nfs4proc.c | 138 +++---
fs/nfs/nfs4session.c | 7 +-
fs/nfs/nfs4session.h | 7 +-
fs/nfs/nfs4state.c | 1 +
fs/nfs/nfs4trace.h | 25 ++
fs/nfs/nfs4xdr.c | 530 +++++++----------------
fs/nfs/nfstrace.c | 1 +
fs/nfs/nfstrace.h | 85 ++++
fs/nfs/pagelist.c | 47 +-
fs/nfs/pnfs.c | 33 +-
fs/nfs/pnfs.h | 2 +
fs/nfs/pnfs_dev.c | 13 +
fs/nfs/read.c | 2 +-
fs/nfs/super.c | 2 +-
fs/nfs/unlink.c | 8 +-
fs/nfs/write.c | 19 +-
fs/nfsd/nfs4callback.c | 13 -
include/linux/nfs4.h | 1 +
include/linux/nfs_fs_sb.h | 1 +
include/linux/nfs_page.h | 10 +
include/linux/nfs_xdr.h | 37 +-
include/linux/sunrpc/auth.h | 44 +-
include/linux/sunrpc/clnt.h | 3 +
include/linux/sunrpc/gss_krb5_enctypes.h | 42 +-
include/linux/sunrpc/sched.h | 9 +
include/linux/sunrpc/xdr.h | 23 +-
include/linux/sunrpc/xprt.h | 7 -
include/linux/sunrpc/xprtsock.h | 1 +
include/trace/events/rpcgss.h | 361 ++++++++++++++++
include/trace/events/rpcrdma.h | 12 +-
include/trace/events/sunrpc.h | 361 +++++++++++++++-
net/sunrpc/Kconfig | 16 +
net/sunrpc/auth.c | 136 +++---
net/sunrpc/auth_gss/Makefile | 2 +-
net/sunrpc/auth_gss/auth_gss.c | 553 ++++++++++++------------
net/sunrpc/auth_gss/gss_krb5_mech.c | 29 +-
net/sunrpc/auth_gss/gss_krb5_wrap.c | 8 +-
net/sunrpc/auth_gss/gss_mech_switch.c | 27 +-
net/sunrpc/auth_gss/gss_rpc_upcall.c | 15 +-
net/sunrpc/auth_gss/gss_rpc_upcall.h | 16 +-
net/sunrpc/auth_gss/gss_rpc_xdr.c | 15 +-
net/sunrpc/auth_gss/gss_rpc_xdr.h | 17 +-
net/sunrpc/auth_gss/svcauth_gss.c | 3 +-
net/sunrpc/auth_gss/trace.c | 11 +
net/sunrpc/auth_null.c | 56 +--
net/sunrpc/auth_unix.c | 122 +++---
net/sunrpc/backchannel_rqst.c | 42 +-
net/sunrpc/clnt.c | 660 ++++++++++++++++-------------
net/sunrpc/sched.c | 17 +-
net/sunrpc/svc.c | 19 +-
net/sunrpc/xdr.c | 121 +++---
net/sunrpc/xprt.c | 23 +-
net/sunrpc/xprtrdma/backchannel.c | 3 +-
net/sunrpc/xprtrdma/frwr_ops.c | 4 +-
net/sunrpc/xprtrdma/rpc_rdma.c | 22 +-
net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 1 -
net/sunrpc/xprtrdma/transport.c | 2 -
net/sunrpc/xprtrdma/verbs.c | 2 +
net/sunrpc/xprtrdma/xprt_rdma.h | 12 +-
net/sunrpc/xprtsock.c | 317 ++++++++------
83 files changed, 3366 insertions(+), 2203 deletions(-)
create mode 100644 include/trace/events/rpcgss.h
create mode 100644 net/sunrpc/auth_gss/trace.c
--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@hammerspace.com
next reply other threads:[~2019-03-12 11:46 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-12 11:46 Trond Myklebust [this message]
2019-03-12 22:20 ` [GIT PULL] Please pull NFS client updates for Linux 5.1 pr-tracker-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=96ed9b50bba1d5d2929f42f41109e122d6aac5e9.camel@hammerspace.com \
--to=trondmy@hammerspace.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.