]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
NFS: Wait for session recovery to finish before returning
authorBryan Schumaker <bjschuma@netapp.com>
Tue, 30 Oct 2012 20:06:35 +0000 (16:06 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 17 Nov 2012 21:18:46 +0000 (13:18 -0800)
commit4ea7934b02fb03f2ca32c1fa254d4b2e929b9e8e
tree18f47d151c64c8702932f9a06744213d1ee64ff4
parent48d959bea289f9d7d41f432f37048e54661e97f8
NFS: Wait for session recovery to finish before returning

commit 399f11c3d872bd748e1575574de265a6304c7c43 upstream.

Currently, we will schedule session recovery and then return to the
caller of nfs4_handle_exception.  This works for most cases, but causes
a hang on the following test case:

Client Server
------ ------
Open file over NFS v4.1
Write to file
Expire client
Try to lock file

The server will return NFS4ERR_BADSESSION, prompting the client to
schedule recovery.  However, the client will continue placing lock
attempts and the open recovery never seems to be scheduled.  The
simplest solution is to wait for session recovery to run before retrying
the lock.

Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/nfs4proc.c