The following is a patch series that fixes up the delegation code so that the NFSv4.1 client will attempt to hold on to a write delegation across link(), rename() and sillyrename() operations, as well as across chown, chmod and setacl. The behaviour of the NFSv4.0 client should remain unchanged. Ditto for the behaviour of the NFSv4.1 client concerning read delegations. Trond Myklebust (8): NFSv4: Fix nfs4_return_incompatible_delegation NFS: Move the delegation return down into nfs4_proc_link() NFS: Move the delegation return down into nfs4_proc_remove() NFS: Move delegation recall into the NFSv4 callback for rename_setup() NFS: Add a delegation return into nfs4_proc_unlink_setup() NFS: Move the delegation return down into _nfs4_do_setattr() NFS: Remove the unused return_delegation() callback NFSv4: Don't return the delegation when not needed by NFSv4.x (x>0) fs/nfs/delegation.c | 17 +++++++++++++++ fs/nfs/delegation.h | 1 + fs/nfs/dir.c | 11 ++-------- fs/nfs/inode.c | 5 ----- fs/nfs/nfs3proc.c | 19 ++++++---------- fs/nfs/nfs4proc.c | 58 ++++++++++++++++++++++++++++++++++++++++--------- fs/nfs/proc.c | 19 ++++++---------- fs/nfs/unlink.c | 7 ++---- include/linux/nfs_xdr.h | 9 ++++---- 9 files changed, 89 insertions(+), 57 deletions(-) -- 2.14.3 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html