summaryrefslogtreecommitdiffstats
path: root/sys/fs/nfs
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2017-04-25 19:02:34 +0000
committerrmacklem <rmacklem@FreeBSD.org>2017-04-25 19:02:34 +0000
commitede7e53da7348bab25901f51c5175f5b0e7122cf (patch)
tree91f5e7f5a9cc2fceb1e1af42b115316919e4bf70 /sys/fs/nfs
parent1de3c4ef63863b9b1b89187bedad7595e59b43fe (diff)
downloadFreeBSD-src-ede7e53da7348bab25901f51c5175f5b0e7122cf.zip
FreeBSD-src-ede7e53da7348bab25901f51c5175f5b0e7122cf.tar.gz
MFC: r316666
Fix the NFSv4.1 client for NFSERR_BADSESSION recovery via ReclaimComplete. For the ReclaimComplete operation, the RPC layer should not loop on NFSERR_BADSESSION. If it does, the recovery thread (nfscl) can get stuck looping and will not do a recovery. This patch fixes it so it does not loop. This bug only affects NFSv4.1 and only when a server reboots.
Diffstat (limited to 'sys/fs/nfs')
-rw-r--r--sys/fs/nfs/nfs_commonsubs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/fs/nfs/nfs_commonsubs.c b/sys/fs/nfs/nfs_commonsubs.c
index 3e4984e..e364612 100644
--- a/sys/fs/nfs/nfs_commonsubs.c
+++ b/sys/fs/nfs/nfs_commonsubs.c
@@ -148,7 +148,7 @@ struct nfsv4_opflag nfsv4_opflag[NFSV41_NOPS] = {
{ 0, 0, 0, 0, LK_EXCLUSIVE, 1, 1 }, /* Test StateID */
{ 0, 0, 0, 0, LK_EXCLUSIVE, 1, 1 }, /* Want Delegation */
{ 0, 0, 0, 0, LK_EXCLUSIVE, 0, 0 }, /* Destroy ClientID */
- { 0, 0, 0, 0, LK_EXCLUSIVE, 1, 1 }, /* Reclaim Complete */
+ { 0, 0, 0, 0, LK_EXCLUSIVE, 1, 0 }, /* Reclaim Complete */
};
#endif /* !APPLEKEXT */
OpenPOWER on IntegriCloud