[GIT PULL] Please pull NFS client changes for Linux 4.6

From: Trond Myklebust
Date: Tue Mar 22 2016 - 14:37:06 EST


Hi Linus,

The following changes since commit fc77dbd34c5c99bce46d40a2491937c3bcbd10af:

 Linux 4.5-rc6 (2016-02-28 08:41:20 -0800)

are available in the git repository at:

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

for you to fetch changes up to f35592a97460f57d1089fd674176e9f34ba311f2:

 nfs/blocklayout: make sure making a aligned read request (2016-03-21 12:39:46 -0400)

Cheers
Trond

----------------------------------------------------------------
NFS client updates for Linux 4.6

Highlights include:

Features:
- Add support for multiple NFSv4.1 callbacks in flight
- Initial patchset for RPC multipath support
- Adapt RPC/RDMA to use the new completion queue API

Bugfixes and cleanups:
- nfs4: nfs4_ff_layout_prepare_ds should return NULL if connection failed
- Cleanups to remove nfs_inode_dio_wait and nfs4_file_fsync
- Fix RPC/RDMA credit accounting
- Properly handle RDMA_ERROR replies
- xprtrdma: Do not wait if ib_post_send() fails
- xprtrdma: Segment head and tail XDR buffers on page boundaries
- xprtrdma cleanups for dprintk, physical_op_map and unused macros

----------------------------------------------------------------
Andy Adamson (1):
ÂÂÂÂÂÂNFS add callback_ops to nfs4_proc_bind_conn_to_session_callback

Christoph Hellwig (2):
ÂÂÂÂÂÂnfs: remove nfs4_file_fsync
ÂÂÂÂÂÂnfs: remove nfs_inode_dio_wait

Chuck Lever (11):
ÂÂÂÂÂÂxprtrdma: Clean up unused RPCRDMA_INLINE_PAD_THRESH macro
ÂÂÂÂÂÂxprtrdma: Clean up physical_op_map()
ÂÂÂÂÂÂxprtrdma: Clean up dprintk format string containing a newline
ÂÂÂÂÂÂxprtrdma: Segment head and tail XDR buffers on page boundaries
ÂÂÂÂÂÂxprtrdma: Do not wait if ib_post_send() fails
ÂÂÂÂÂÂrpcrdma: Add RPCRDMA_HDRLEN_ERR
ÂÂÂÂÂÂxprtrdma: Properly handle RDMA_ERROR replies
ÂÂÂÂÂÂxprtrdma: Serialize credit accounting again
ÂÂÂÂÂÂxprtrdma: Use new CQ API for RPC-over-RDMA client receive CQs
ÂÂÂÂÂÂxprtrdma: Use an anonymous union in struct rpcrdma_mw
ÂÂÂÂÂÂxprtrdma: Use new CQ API for RPC-over-RDMA client send CQs

Jeff Layton (1):
ÂÂÂÂÂÂnfs4: nfs4_ff_layout_prepare_ds should return NULL if connection failed

Kinglong Mee (1):
ÂÂÂÂÂÂnfs/blocklayout: make sure making a aligned read request

Trond Myklebust (22):
ÂÂÂÂÂÂNFSv4.x: Remove hard coded slotids in callback channel
ÂÂÂÂÂÂNFSv4.x: CB_SEQUENCE should return NFS4ERR_DELAY if still executing
ÂÂÂÂÂÂNFSv4.x: Enforce the ca_maxresponsesize_cached on the back channel
ÂÂÂÂÂÂNFSv4.x: Fix wraparound issues when validing the callback sequence id
ÂÂÂÂÂÂNFSv4.x: Allow multiple callbacks in flight
ÂÂÂÂÂÂSUNRPC: Remove unused function rpc_task_reset_client
ÂÂÂÂÂÂSUNRPC: Reorder rpc_task to put waitqueue related info in same cachelines
ÂÂÂÂÂÂSUNRPC: Uninline xprt_get(); It isn't performance critical.
ÂÂÂÂÂÂSUNRPC: Make freeing of struct xprt rcu-safe
ÂÂÂÂÂÂNFSv4.x: Fix NFS4ERR_RETRY_UNCACHED_REP in nfs4_callback_sequence
ÂÂÂÂÂÂSUNRPC: Add a structure to track multiple transports
ÂÂÂÂÂÂSUNRPC: Make rpc_clnt store the multipath iterators
ÂÂÂÂÂÂSUNRPC: Use the multipath iterator to assign a transport to each task
ÂÂÂÂÂÂSUNRPC: Allow caller to specify the transport to use
ÂÂÂÂÂÂSUNRPC: Add a helper to apply a function to all the rpc_clnt's transports
ÂÂÂÂÂÂSUNRPC: Make NFS swap work with multipath
ÂÂÂÂÂÂNFSv4.1: nfs4_proc_bind_conn_to_session must iterate over all connections
ÂÂÂÂÂÂSUNRPC: Allow addition of new transports to a struct rpc_clnt
ÂÂÂÂÂÂpnfs/NFSv4.1: Add multipath capabilities to pNFS flexfiles servers over NFSv3
ÂÂÂÂÂÂMerge branch 'nfsv41_cb'
ÂÂÂÂÂÂMerge branch 'multipath'
ÂÂÂÂÂÂMerge tag 'nfs-rdma-4.6-1' of git://git.linux-nfs.org/projects/anna/nfs-rdma

Âfs/nfs/blocklayout/blocklayout.cÂÂÂÂÂÂÂÂÂÂ|ÂÂ13 +-
Âfs/nfs/callback.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ3 +-
Âfs/nfs/callback_proc.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ69 +++--
Âfs/nfs/callback_xdr.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ12 +-
Âfs/nfs/file.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ12 +-
Âfs/nfs/flexfilelayout/flexfilelayoutdev.c |ÂÂÂ2 +
Âfs/nfs/inode.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ2 +-
Âfs/nfs/internal.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ6 +-
Âfs/nfs/nfs4file.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ33 +--
Âfs/nfs/nfs4proc.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ63 +++-
Âfs/nfs/nfs4session.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ54 +++-
Âfs/nfs/nfs4session.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ8 +
Âfs/nfs/pnfs_nfs.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ16 +-
Âinclude/linux/sunrpc/clnt.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ18 +-
Âinclude/linux/sunrpc/rpc_rdma.hÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ12 +-
Âinclude/linux/sunrpc/sched.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ32 +-
Âinclude/linux/sunrpc/xprt.hÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ22 +-
Âinclude/linux/sunrpc/xprtmultipath.hÂÂÂÂÂÂ|ÂÂ69 +++++
Âinclude/linux/sunrpc/xprtrdma.hÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ2 -
Ânet/sunrpc/MakefileÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ3 +-
Ânet/sunrpc/auth_gss/auth_gss.cÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ4 +-
Ânet/sunrpc/clnt.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ| 328 ++++++++++++++++-----
Ânet/sunrpc/rpcb_clnt.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ10 +-
Ânet/sunrpc/sched.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ2 +
Ânet/sunrpc/xprt.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ42 ++-
Ânet/sunrpc/xprtmultipath.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ| 475 ++++++++++++++++++++++++++++++
Ânet/sunrpc/xprtrdma/fmr_ops.cÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ28 +-
Ânet/sunrpc/xprtrdma/frwr_ops.cÂÂÂÂÂÂÂÂÂÂÂÂ| 143 +++++----
Ânet/sunrpc/xprtrdma/physical_ops.cÂÂÂÂÂÂÂÂ|ÂÂÂ1 -
Ânet/sunrpc/xprtrdma/rpc_rdma.cÂÂÂÂÂÂÂÂÂÂÂÂ| 108 +++++--
Ânet/sunrpc/xprtrdma/verbs.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ| 204 ++++---------
Ânet/sunrpc/xprtrdma/xprt_rdma.hÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ14 +-
Ânet/sunrpc/xprtsock.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂÂ4 +-
Â33 files changed, 1327 insertions(+), 487 deletions(-)
Âcreate mode 100644 include/linux/sunrpc/xprtmultipath.h
Âcreate mode 100644 net/sunrpc/xprtmultipath.c

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