Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Apr 2000 01:14:02 +0400
From:      "Andrey A. Chernov" <ache@nagual.pp.ru>
To:        current@freebsd.org
Subject:   Workaround for hanging on exit: patch for review
Message-ID:  <20000427011402.A7265@nagual.pp.ru>

next in thread | raw e-mail | index | archive | help
I often notice processes hanging forever on exit's ttywait when TCP
connection dropped. Here is a patch I plan to commit which restrict
waiting for output drain by 3 minutes. Any comments, improvements or
objections?

--- kern_exit.c.bak	Sun Apr 16 23:35:55 2000
+++ kern_exit.c	Thu Apr 27 00:56:02 2000
@@ -230,6 +230,9 @@
 			if (sp->s_ttyp && (sp->s_ttyp->t_session == sp)) {
 				if (sp->s_ttyp->t_pgrp)
 					pgsignal(sp->s_ttyp->t_pgrp, SIGHUP, 1);
+				/* XXX don't hang forever */
+				if (sp->s_ttyp->t_timeout == 0)
+					sp->s_ttyp->t_timeout = 180 * hz;
 				(void) ttywait(sp->s_ttyp);
 				/*
 				 * The tty could have been revoked

-- 
Andrey A. Chernov
<ache@nagual.pp.ru>
http://nagual.pp.ru/~ache/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000427011402.A7265>