freebsd-dev/sys/fs/nfs
Rick Macklem 8e59ec29e4 nfscl: Fix handling of nd_slotid while handling NFSERR_BADSESSION
When the NFSv4.1/4.2 client is handling a server error
of NFSERR_BADSESSION, it retries RPCs with a new session.
Without this patch, the nd_slotid was not being updated
for the new session.

This would result in a bogus console message like
"Wrong session srvslot=X slot=Y" and then it would
free the incorrect slot, often generating a
"freeing free slot!!" console message as well.

This patch fixes the problem.

Note that FreeBSD NFSv4.1/4.2 servers only
generate a NFSERR_BADSESSION error after a reboot
or after a client does a DestroySession operation.

PR:	260011
MFC after:	1 week
2022-08-25 20:48:04 -07:00
..
nfs_commonacl.c nfsd: Do not accept audit/alarm ACEs for the NFSv4 server 2022-01-11 09:40:07 -08:00
nfs_commonkrpc.c nfscl: Fix handling of nd_slotid while handling NFSERR_BADSESSION 2022-08-25 20:48:04 -07:00
nfs_commonport.c nfscl: Add support for a NFSv4 AppendWrite RPC 2022-04-05 08:11:37 -07:00
nfs_commonsubs.c nfscl: Add optional support for slots marked bad 2022-07-09 14:43:16 -07:00
nfs_var.h nfscl: Add optional support for slots marked bad 2022-07-09 14:43:16 -07:00
nfs.h nfsd: Add a sanity check for Owner/OwnerGroup string length 2022-05-04 13:58:22 -07:00
nfscl.h nfscl: Add a cred argument to nfscl_reqstart() 2022-07-08 16:58:06 -07:00
nfsclstate.h nfscl: Add optional support for slots marked bad 2022-07-09 14:43:16 -07:00
nfsdport.h Do not copy vp into f_data for DTYPE_VNODE files. 2020-09-15 21:55:21 +00:00
nfskpiport.h nfscommon: Clean up the code by removing the vnode_vtype() macro 2022-06-24 13:56:35 -07:00
nfsm_subs.h nfscl: Clean up the code by removing #if(n)def APPLE 2022-06-18 13:43:02 -07:00
nfsport.h nfscl: Clean up the code by removing unused arguments 2022-04-13 07:43:13 -07:00
nfsproto.h Unbreak the build: Also define NFSV42_OLDNPROCS here. 2022-04-05 11:54:20 -06:00
nfsrvcache.h Replace all instances of the typedef mbuf_t with "struct mbuf *". 2020-04-17 21:17:51 +00:00
nfsrvstate.h nfsd: Fix CreateSession for an established ClientID 2022-07-13 16:28:56 -07:00
nfsv4_errstr.h Add missing comma in nfsv4_errstr 2020-01-13 21:49:27 +00:00
rpcv2.h fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
xdr_subs.h nfs: don't truncate directory cookies to 32-bits in the NFS server 2021-12-15 20:54:57 -07:00