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>