nfsd: clean up helper __release_lock_stateid
authorTrond Myklebust <trond.myklebust@primarydata.com>
Thu, 10 Jul 2014 18:07:27 +0000 (14:07 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Thu, 10 Jul 2014 19:05:26 +0000 (15:05 -0400)
Use filp_close instead of open coding. filp_close does a bit more than
just release the locks and put the filp. It also calls ->flush and
dnotify_flush, both of which should be done here anyway.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4state.c

index 314dc80..4ab567e 100644 (file)
@@ -821,10 +821,8 @@ static void __release_lock_stateid(struct nfs4_ol_stateid *stp)
        unhash_generic_stateid(stp);
        unhash_stid(&stp->st_stid);
        file = find_any_file(stp->st_file);
-       if (file) {
-               locks_remove_posix(file, (fl_owner_t)lockowner(stp->st_stateowner));
-               fput(file);
-       }
+       if (file)
+               filp_close(file, (fl_owner_t)lockowner(stp->st_stateowner));
        close_generic_stateid(stp);
        free_generic_stateid(stp);
 }