FreeBSD Bugzilla – Attachment 247232 Details for
Bug 275905
nfs client: mount becomes unresponsive
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Free a session slot when a server replies RPC_AUTHERR
krbfail.patch (text/plain), 932 bytes, created by
Rick Macklem
on 2023-12-25 00:16:54 UTC
(
hide
)
Description:
Free a session slot when a server replies RPC_AUTHERR
Filename:
MIME Type:
Creator:
Rick Macklem
Created:
2023-12-25 00:16:54 UTC
Size:
932 bytes
patch
obsolete
>--- sys/fs/nfs/nfs_commonkrpc.c.krbfail 2023-12-24 15:38:35.923972000 -0800 >+++ sys/fs/nfs/nfs_commonkrpc.c 2023-12-24 16:06:00.692192000 -0800 >@@ -1047,6 +1047,23 @@ tryagain: > NFSINCRGLOBAL(nfsstatsv1.rpcinvalid); > error = ENXIO; > } >+ } else if (stat == RPC_AUTHERR) { >+ /* Check for a session slot that needs to be free'd. */ >+ if ((nd->nd_flag & (ND_NFSV41 | ND_HASSLOTID)) == >+ (ND_NFSV41 | ND_HASSLOTID) && nmp != NULL && >+ nd->nd_procnum != NFSPROC_NULL) { >+printf("Got AUTHERR for RPC with slot.\n"); >+ /* >+ * This can occur when a Kerberos/RPCSEC_GSS session >+ * expires, due to TGT expiration. >+ * Free the slot, resetting the slot's sequence#. >+ */ >+ if (sep == NULL) >+ sep = nfsmnt_mdssession(nmp); >+ nfsv4_freeslot(sep, nd->nd_slotid, true); >+ } >+ NFSINCRGLOBAL(nfsstatsv1.rpcinvalid); >+ error = EACCES; > } else { > NFSINCRGLOBAL(nfsstatsv1.rpcinvalid); > error = EACCES;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 275905
: 247232 |
247257