summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4proc.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-09-15 14:25:04 +0200
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-09-23 05:25:03 +0200
commitc514983d8d2260020543a81589a2b8c7d4bdab4e (patch)
tree6151b2a7bb74c6209f7861d0748b35261e53c15e /fs/nfs/nfs4proc.c
parentNFSv4: Retry lease recovery if it failed during a synchronous operation. (diff)
downloadlinux-c514983d8d2260020543a81589a2b8c7d4bdab4e.tar.xz
linux-c514983d8d2260020543a81589a2b8c7d4bdab4e.zip
NFSv4: Handle the condition NFS4ERR_FILE_OPEN
Retry a few times before we give up: the error is usually due to ordering issues with asynchronous RPC calls. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4proc.c')
-rw-r--r--fs/nfs/nfs4proc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index c218cc450b92..c49ac3ea1dc3 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -2891,6 +2891,7 @@ int nfs4_handle_exception(const struct nfs_server *server, int errorcode, struct
if (ret == 0)
exception->retry = 1;
break;
+ case -NFS4ERR_FILE_OPEN:
case -NFS4ERR_GRACE:
case -NFS4ERR_DELAY:
ret = nfs4_delay(server->client, &exception->timeout);