(Oops, I had a typo in the linux-nfs mailing list) On Thu, 2018-08-23 at 15:27 -0400, Anna Schumaker wrote: > Hi Linus, > > The following changes since commit cd3f77d74ac31b4627cdfa70812338076a1ea475: > > Merge tag 'usb-4.18-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb (2018-07-26 09:29:29 -0700) > > are available in the Git repository at: > > git://git.linux-nfs.org/projects/anna/linux-nfs.git tags/nfs-for-4.19-1 > > for you to fetch changes up to 0af4c8be97a14d1df8a78b4993a09e8dff545a18: > > pNFS: Remove unwanted optimisation of layoutget (2018-08-21 13:39:08 -0400) > > ---------------------------------------------------------------- > These patches include adding async support for the v4.2 COPY operation. > I think Bruce is planning to send the server patches for the next release, > but I figured we could get the client side out of the way now since it's been > in my tree for a while. This shouldn't cause any problems, since the server > will still respond with synchronous copies even if the client requests async. > I can remove the patches and resend the pull if you think that'll be a problem. > > I also updated the expiry date on my pgp key the other day. I'm pretty sure > it synced to the server, but just a heads up in case I missed a step somewhere! > > Stable bufixes: > - v3.17+: Fix an off-by-one in bl_map_stripe() > - v4.9+: NFSv4 client live hangs after live data migration recovery > - v4.18+: xprtrdma: Fix disconnect regression > - v4.14+: Fix locking in pnfs_generic_recover_commit_reqs > - v4.9+: Fix a sleep in atomic context in nfs4_callback_sequence() > > Features: > - Add support for asynchronous server-side COPY operations > > Other bugfixes and cleanups: > - Optitmizations and fixes involving NFS v4.1 / pNFS layout handling > - Optimize lseek(fd, SEEK_CUR, 0) on directories to avoid locking > - Immediately reschedule writeback when the server replies with an error > - Fix excessive attribute revalidation in nfs_execute_ok() > - Add error checking to nfs_idmap_prepare_message() > - Use new vm_fault_t return type > - Return a delegation when reclaiming one that the server has recalled > - Referrals should inherit proto setting from parents > - Make rpc_auth_create_args a const > - Improvements to rpc_iostats tracking > - Fix a potential reference leak when there is an error processing a callback > - Fix rmdir / mkdir / rename nlink accounting > - Fix updating inode change attribute > - Fix error handling in nfsn4_sp4_select_mode() > - Use an appropriate work queue for direct-write completion > - Don't busy wait if NFSv4 session draining is interrupted > > Thanks, > Anna > > ---------------------------------------------------------------- > Bill Baker (1): > NFSv4 client live hangs after live data migration recovery > > Calum Mackay (1): > nfs: Referrals not inheriting proto setting from parent > > Chengguang Xu (1): > nfs: add error check in nfs_idmap_prepare_message() > > Chuck Lever (1): > xprtrdma: Fix disconnect regression > > Dan Carpenter (3): > pnfs/blocklayout: off by one in bl_map_stripe() > NFS: silence a harmless uninitialized variable warning > sunrpc: kstrtoul() can also return -ERANGE > > Dave Wysochanski (3): > sunrpc: add _print_rpc_iostats() to output metrics for one RPC op > sunrpc: Add _add_rpc_iostats() to add rpc_iostats metrics > sunrpc: Change rpc_print_iostats to rpc_clnt_show_stats and handle rpc_clnt clones > > Gustavo A. R. Silva (2): > NFS: Mark expected switch fall-throughs > pnfs: Use true and false for boolean values > > Jeff Layton (1): > nfs: initiate returning delegation when reclaiming one that's been recalled > > Lance Shelton (1): > Fix error code in nfs_lookup_verify_inode() > > NeilBrown (1): > NFS: Use an appropriate work queue for direct-write completion > > Olga Kornievskaia (11): > NFSv4.0 fix client reference leak in callback > NFS CB_OFFLOAD xdr > NFS OFFLOAD_CANCEL xdr > NFS COPY xdr handle async reply > NFS add support for asynchronous COPY > NFS handle COPY reply CB_OFFLOAD call race > NFS export nfs4_async_handle_error > NFS send OFFLOAD_CANCEL when COPY killed > NFS handle COPY ERR_OFFLOAD_NO_REQS > NFS add a simple sync nfs4_proc_commit after async COPY > NFS recover from destination server reboot for copies > > Sargun Dhillon (1): > net/sunrpc: Make rpc_auth_create_args a const > > Souptick Joarder (1): > fs: nfs: Adding new return type vm_fault_t > > Stephen Hemminger (1): > sunrpc: whitespace fixes > > Trond Myklebust (24): > pNFS: Don't discard layout segments that are marked for return > pNFS: Don't update the stateid when replying NFS4ERR_DELAY to a layout recall > pNFS: Ignore non-recalled layouts in pnfs_layout_need_return() > pNFS/flexfiles: Ensure we always return a layout if it has layoutstats > pNFS: Wait for stale layoutget calls to complete in pnfs_update_layout() > NFS: Allow optimisation of lseek(fd, SEEK_CUR, 0) on directories > pNFS: Parse the results of layoutget on open even if permissions checks fail > NFSv4.1: Fix a potential layoutget/layoutrecall deadlock > NFS: Ensure we immediately start writeback on rescheduled writes > NFS: Fix excessive attribute revalidation in nfs_execute_ok() > NFS: More excessive attribute revalidation in nfs_execute_ok() > pnfs: Fix handling of NFS4ERR_OLD_STATEID replies to layoutreturn > NFSv4: bump/drop the nlink count on the parent dir when we mkdir/rmdir > NFSv4: Detect nlink changes on cross-directory renames too > NFSv4: Mark the inode change attribute up to date in update_changeattr() > pnfs: pnfs_find_lseg() should not check NFS_LSEG_LAYOUTRETURN > NFSv4: Don't busy wait if NFSv4 session draining is interrupted > NFSv4: Fix a typo in nfs4_init_channel_attrs() > NFSv4: Fix locking in pnfs_generic_recover_commit_reqs > NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() > pNFS: When updating the stateid in layoutreturn, also update the recall range > pNFS: Treat RECALLCONFLICT like DELAY... > pNFS/flexfiles: ff_layout_pg_init_read should exit on error > pNFS: Remove unwanted optimisation of layoutget > > Wei Yongjun (1): > NFSv4: Fix error handling in nfs4_sp4_select_mode() > > fs/nfs/blocklayout/blocklayout.c | 1 + > fs/nfs/blocklayout/dev.c | 2 +- > fs/nfs/callback.h | 12 ++ > fs/nfs/callback_proc.c | 97 ++++++++++++--- > fs/nfs/callback_xdr.c | 91 +++++++++++++- > fs/nfs/client.c | 1 + > fs/nfs/dir.c | 32 +++-- > fs/nfs/direct.c | 2 +- > fs/nfs/file.c | 4 +- > fs/nfs/flexfilelayout/flexfilelayout.c | 31 +++-- > fs/nfs/nfs3acl.c | 2 + > fs/nfs/nfs42proc.c | 209 +++++++++++++++++++++++++++++++- > fs/nfs/nfs42xdr.c | 98 +++++++++++++-- > fs/nfs/nfs4_fs.h | 8 +- > fs/nfs/nfs4client.c | 21 +++- > fs/nfs/nfs4file.c | 10 +- > fs/nfs/nfs4idmap.c | 4 + > fs/nfs/nfs4proc.c | 156 ++++++++++++++++++++---- > fs/nfs/nfs4state.c | 40 +++++- > fs/nfs/nfs4xdr.c | 1 + > fs/nfs/pagelist.c | 1 + > fs/nfs/pnfs.c | 123 +++++++++++++------ > fs/nfs/pnfs.h | 7 +- > fs/nfs/pnfs_nfs.c | 16 ++- > fs/nfs/super.c | 4 +- > fs/nfs/write.c | 2 + > include/linux/nfs4.h | 1 + > include/linux/nfs_fs.h | 11 ++ > include/linux/nfs_fs_sb.h | 4 +- > include/linux/nfs_xdr.h | 15 ++- > include/linux/sunrpc/auth.h | 5 +- > include/linux/sunrpc/clnt.h | 1 + > include/linux/sunrpc/metrics.h | 4 +- > net/sunrpc/auth.c | 4 +- > net/sunrpc/auth_gss/auth_gss.c | 11 +- > net/sunrpc/auth_gss/gss_generic_token.c | 1 - > net/sunrpc/auth_gss/gss_krb5_crypto.c | 1 - > net/sunrpc/auth_gss/gss_krb5_keys.c | 1 - > net/sunrpc/auth_gss/gss_krb5_seal.c | 1 - > net/sunrpc/auth_gss/gss_krb5_unseal.c | 1 - > net/sunrpc/auth_gss/gss_krb5_wrap.c | 1 - > net/sunrpc/auth_gss/svcauth_gss.c | 2 +- > net/sunrpc/auth_null.c | 2 +- > net/sunrpc/auth_unix.c | 2 +- > net/sunrpc/backchannel_rqst.c | 1 - > net/sunrpc/clnt.c | 30 +++-- > net/sunrpc/rpcb_clnt.c | 2 +- > net/sunrpc/stats.c | 55 ++++++--- > net/sunrpc/sunrpc.h | 1 - > net/sunrpc/xprt.c | 2 +- > net/sunrpc/xprtrdma/verbs.c | 5 +- > net/sunrpc/xprtsock.c | 1 - > 52 files changed, 924 insertions(+), 216 deletions(-)