nfsd4: break only delegations when appropriate
authorJ. Bruce Fields <bfields@redhat.com>
Mon, 5 Mar 2012 21:40:31 +0000 (16:40 -0500)
committerJ. Bruce Fields <bfields@redhat.com>
Tue, 7 Jan 2014 21:01:15 +0000 (16:01 -0500)
commit208d0acc49cbf22a71d32b40a69e199717a76687
tree2f884738d02f0ab5da93e85198dc8458c1fe5b9c
parent60810e5489dffd0bd12e4f99fe9fc330c9a636e1
nfsd4: break only delegations when appropriate

As a temporary fix, nfsd was breaking all leases on unlink, link,
rename, and setattr.

Now that we can distinguish between leases and delegations, we can be
nicer and break only the delegations, and not bother lease-holders with
operations they don't care about.

And we get to delete some code while we're at it.

Note that in the presence of delegations the vfs calls here all return
-EWOULDBLOCK instead of blocking, so nfsd threads will not get stuck
waiting for delegation returns.

Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/vfs.c