]> err.no Git - linux-2.6/commit
nfsd4: recognize callback channel failure earlier
authorJ. Bruce Fields <bfields@citi.umich.edu>
Sat, 24 Nov 2007 03:26:18 +0000 (22:26 -0500)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Fri, 1 Feb 2008 21:42:06 +0000 (16:42 -0500)
commit404ec117be5d36e1a4c4582d0c518594333e32df
treecdae7b67f896c93130a6a669ca65cffc94079b07
parent35bba9a37e68c68a820a1a772f016255c0838f79
nfsd4: recognize callback channel failure earlier

When the callback channel fails, we inform the client of that by
returning a cb_path_down error the next time it tries to renew its
lease.

If we wait most of a lease period before deciding that a callback has
failed and that the callback channel is down, then we decrease the
chances that the client will find out in time to do anything about it.

So, mark the channel down as soon as we recognize that an rpc has
failed.  However, continue trying to recall delegations anyway, in hopes
it will come back up.  This will prevent more delegations from being
given out, and ensure cb_path_down is returned to renew calls earlier,
while still making the best effort to deliver recalls of existing
delegations.

Also fix a couple comments and remove a dprink that doesn't seem likely
to be useful.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
fs/nfsd/nfs4callback.c
fs/nfsd/nfs4state.c