diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-12-15 15:36:07 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2012-12-15 15:39:59 -0500 |
commit | ac20d163fccf9fa6acec8b68f127003635e13b72 (patch) | |
tree | 2424cf9b4a61b6889e484b35c6385d1bf1e03600 /fs/nfs/nfs4session.c | |
parent | 8e63b6a8adabb0551124c3b78f7f5f36912c3728 (diff) | |
download | blackbird-op-linux-ac20d163fccf9fa6acec8b68f127003635e13b72.tar.gz blackbird-op-linux-ac20d163fccf9fa6acec8b68f127003635e13b72.zip |
NFSv4.1: Deal effectively with interrupted RPC calls.
If an RPC call is interrupted, assume that the server hasn't processed
the RPC call so that the next time we use the slot, we know that if we
get a NFS4ERR_SEQ_MISORDERED or NFS4ERR_SEQ_FALSE_RETRY, we just have
to bump the sequence number.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4session.c')
-rw-r--r-- | fs/nfs/nfs4session.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4session.c b/fs/nfs/nfs4session.c index 0e1cc1f4e51a..ebda5f4a031b 100644 --- a/fs/nfs/nfs4session.c +++ b/fs/nfs/nfs4session.c @@ -172,6 +172,7 @@ static void nfs4_reset_slot_table(struct nfs4_slot_table *tbl, p = &tbl->slots; while (*p) { (*p)->seq_nr = ivalue; + (*p)->interrupted = 0; p = &(*p)->next; } tbl->highest_used_slotid = NFS4_NO_SLOT; |