summaryrefslogtreecommitdiff
path: root/fs/nfs
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2005-11-04 15:33:50 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2005-11-04 15:33:50 -0500
commit2c56617d76fa7b2a709d58abd7ed68889cc88b90 (patch)
treefb4e01de2057659b4ec80a812fa94d7b97359402 /fs/nfs
parentd530838bfa507d67b40d13b00d9cbd7a46a47e78 (diff)
downloadlinux-3.10-2c56617d76fa7b2a709d58abd7ed68889cc88b90.tar.gz
linux-3.10-2c56617d76fa7b2a709d58abd7ed68889cc88b90.tar.bz2
linux-3.10-2c56617d76fa7b2a709d58abd7ed68889cc88b90.zip
NFSv4: Fix the handling of the error NFS4ERR_OLD_STATEID
Ensure that we retry the failed operation... Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs4proc.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 9e492c2261c..54ff465cf7c 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -2595,12 +2595,10 @@ int nfs4_handle_exception(const struct nfs_server *server, int errorcode, struct
case -NFS4ERR_GRACE:
case -NFS4ERR_DELAY:
ret = nfs4_delay(server->client, &exception->timeout);
- if (ret == 0)
- exception->retry = 1;
- break;
+ if (ret != 0)
+ break;
case -NFS4ERR_OLD_STATEID:
- if (ret == 0)
- exception->retry = 1;
+ exception->retry = 1;
}
/* We failed to handle the error */
return nfs4_map_errors(ret);