summaryrefslogtreecommitdiffstats
path: root/fs/nfsd/nfs4recover.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2012-11-12 21:00:58 +0100
committerJ. Bruce Fields <bfields@redhat.com>2012-11-13 00:55:12 +0100
commit7e4f015d815d04d888d434889dd3bbb4c210511a (patch)
treed523bd2a10acf10d95f402c7a784ee32ff53fe15 /fs/nfsd/nfs4recover.c
parentnfsd: get rid of cl_recdir field (diff)
downloadlinux-7e4f015d815d04d888d434889dd3bbb4c210511a.tar.xz
linux-7e4f015d815d04d888d434889dd3bbb4c210511a.zip
nfsd: release the legacy reclaimable clients list in grace_done
The current code holds on to this list until nfsd is shut down, but it's never touched once the grace period ends. Release that memory back into the wild when the grace period ends. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/nfs4recover.c')
-rw-r--r--fs/nfsd/nfs4recover.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c
index 80e77cc14250..b03b6aa7a6a0 100644
--- a/fs/nfsd/nfs4recover.c
+++ b/fs/nfsd/nfs4recover.c
@@ -404,6 +404,7 @@ nfsd4_recdir_purge_old(struct net *net, time_t boot_time)
vfs_fsync(rec_file, 0);
mnt_drop_write_file(rec_file);
out:
+ nfs4_release_reclaim();
if (status)
printk("nfsd4: failed to purge old clients from recovery"
" directory %s\n", rec_file->f_path.dentry->d_name.name);