summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4session.h
diff options
context:
space:
mode:
authorTrond Myklebust2016-09-22 19:38:51 +0200
committerAnna Schumaker2016-09-27 20:31:27 +0200
commit0a014a44a50839a8064618e959fae5bbc44c2fd5 (patch)
treed5817c8c204ed6f710f87a1fc1019283a6372351 /fs/nfs/nfs4session.h
parentxprtrdma: use complete() instead complete_all() (diff)
downloadkernel-qcow2-linux-0a014a44a50839a8064618e959fae5bbc44c2fd5.tar.gz
kernel-qcow2-linux-0a014a44a50839a8064618e959fae5bbc44c2fd5.tar.xz
kernel-qcow2-linux-0a014a44a50839a8064618e959fae5bbc44c2fd5.zip
NFSv4.1: Don't deadlock the state manager on the SEQUENCE status flags
As described in RFC5661, section 18.46, some of the status flags exist in order to tell the client when it needs to acknowledge the existence of revoked state on the server and/or to recover state. Those flags will then remain set until the recovery procedure is done. In order to avoid looping, the client therefore needs to ignore those particular flags while recovering. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Tested-by: Oleg Drokin <green@linuxhacker.ru> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs/nfs/nfs4session.h')
-rw-r--r--fs/nfs/nfs4session.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/nfs4session.h b/fs/nfs/nfs4session.h
index 3bb6af70973c..dae385500005 100644
--- a/fs/nfs/nfs4session.h
+++ b/fs/nfs/nfs4session.h
@@ -23,6 +23,7 @@ struct nfs4_slot {
u32 slot_nr;
u32 seq_nr;
unsigned int interrupted : 1,
+ privileged : 1,
seq_done : 1;
};