summaryrefslogtreecommitdiffstats
path: root/fs/nfs/delegation.c
diff options
context:
space:
mode:
authorTrond Myklebust <trondmy@gmail.com>2020-01-27 09:58:15 -0500
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2020-02-03 16:35:07 -0500
commitf885ea640d65d98c8f1a326efb3abe13f1865c89 (patch)
treed4b08a64a629e7641f5d86e41275de5dbc1b8999 /fs/nfs/delegation.c
parent65f5160376212094b477c7309ba9867e69ec69d5 (diff)
downloadlinux-stable-f885ea640d65d98c8f1a326efb3abe13f1865c89.tar.gz
linux-stable-f885ea640d65d98c8f1a326efb3abe13f1865c89.tar.bz2
linux-stable-f885ea640d65d98c8f1a326efb3abe13f1865c89.zip
NFSv4: nfs_inode_evict_delegation() should set NFS_DELEGATION_RETURNING
In particular, the pnfs return-on-close code will check for that flag, so ensure we set it appropriately. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs/nfs/delegation.c')
-rw-r--r--fs/nfs/delegation.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/delegation.c b/fs/nfs/delegation.c
index fe57b2b5314a..a7e42725c3b1 100644
--- a/fs/nfs/delegation.c
+++ b/fs/nfs/delegation.c
@@ -607,6 +607,7 @@ void nfs_inode_evict_delegation(struct inode *inode)
delegation = nfs_inode_detach_delegation(inode);
if (delegation != NULL) {
+ set_bit(NFS_DELEGATION_RETURNING, &delegation->flags);
set_bit(NFS_DELEGATION_INODE_FREEING, &delegation->flags);
nfs_do_return_delegation(inode, delegation, 1);
nfs_free_delegation(delegation);