Date: Wed, 1 Jul 2009 16:42:03 +0000 (UTC) From: Rick Macklem <rmacklem@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/rpc/rpcsec_gss rpcsec_gss.c Message-ID: <200907011642.n61GgNHB026273@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
rmacklem 2009-07-01 16:42:03 UTC
FreeBSD src repository
Modified files:
sys/rpc/rpcsec_gss rpcsec_gss.c
Log:
SVN rev 195246 on 2009-07-01 16:42:03Z by rmacklem
When unmounting an NFS mount using sec=krb5[ip], the umount system
call could get hung sleeping on "gsssta" if the credentials for a user
that had been accessing the mount point have expired. This happened
because rpc_gss_destroy_context() would end up calling itself when the
"destroy context" RPC was attempted, trying to refresh the credentials.
This patch just checks for this case in rpc_gss_refresh() and returns
without attempting the refresh, which avoids the recursive call to
rpc_gss_destroy_context() and the subsequent hang.
Reviewed by: dfr
Approved by: re (Ken Smith), kib (mentor)
Revision Changes Path
1.3 +14 -0 src/sys/rpc/rpcsec_gss/rpcsec_gss.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907011642.n61GgNHB026273>
