: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

    I think this is a good idea.  I've seen processes stuck in ttywait
    forever too, usually when I'm using cu and the remote end is spewing
    all sorts of junk my way.

    p.s. (on a different topic) I am also seeing serial stream corruption 
    for serial console output.  If I add a kernel printf() that generates
    a lot of output, I get most of it on the serial console plus a lot 
    of other random garbage.  Very weird.

                                        -Matt
                                        Matthew Dillon 
                                        <[EMAIL PROTECTED]>


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to