diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2017-04-25 19:02:34 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2017-04-25 19:02:34 +0000 |
commit | ede7e53da7348bab25901f51c5175f5b0e7122cf (patch) | |
tree | 91f5e7f5a9cc2fceb1e1af42b115316919e4bf70 /sys/fs/nfs | |
parent | 1de3c4ef63863b9b1b89187bedad7595e59b43fe (diff) | |
download | FreeBSD-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.c | 2 |
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 */ |