nfsd4: fix struct file leak on delegation
authorJ. Bruce Fields <bfields@redhat.com>
Fri, 15 Apr 2011 22:08:26 +0000 (18:08 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Mon, 18 Apr 2011 17:30:56 +0000 (13:30 -0400)
Introduced by acfdf5c383b38f7f4dddae41b97c97f1ae058f49.

Cc: stable@kernel.org
Reported-by: Gerhard Heift <ml-nfs-linux-20110412-ef47@gheift.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4state.c

index aa309aa93fe81be66e5e33c4d404ebec4b815f86..c79a98319e4a218020bf03af370a8291d437f474 100644 (file)
@@ -258,6 +258,7 @@ static void nfs4_put_deleg_lease(struct nfs4_file *fp)
        if (atomic_dec_and_test(&fp->fi_delegees)) {
                vfs_setlease(fp->fi_deleg_file, F_UNLCK, &fp->fi_lease);
                fp->fi_lease = NULL;
+               fput(fp->fi_deleg_file);
                fp->fi_deleg_file = NULL;
        }
 }