summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/tty.c4
-rw-r--r--sys/kern/tty_pty.c1
2 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
index 2ce8c8a..2670c9e 100644
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -223,7 +223,8 @@ ttyopen(device, tp)
bzero(&tp->t_winsize, sizeof(tp->t_winsize));
}
/* XXX don't hang forever on output */
- tp->t_timeout = drainwait*hz;
+ if (tp->t_timeout < 0)
+ tp->t_timeout = drainwait*hz;
ttsetwater(tp);
splx(s);
return (0);
@@ -2402,6 +2403,7 @@ ttymalloc(tp)
return(tp);
tp = malloc(sizeof *tp, M_TTYS, M_WAITOK);
bzero(tp, sizeof *tp);
+ tp->t_timeout = -1;
ttyregister(tp);
return (tp);
}
diff --git a/sys/kern/tty_pty.c b/sys/kern/tty_pty.c
index 14269c1..4e58c24 100644
--- a/sys/kern/tty_pty.c
+++ b/sys/kern/tty_pty.c
@@ -157,6 +157,7 @@ ptyinit(n)
devs->si_drv1 = devc->si_drv1 = pt;
devs->si_tty = devc->si_tty = &pt->pt_tty;
+ pt->pt_tty.t_timeout = -1;
ttyregister(&pt->pt_tty);
}
OpenPOWER on IntegriCloud