Telnet problems
Chris Torek
chris at umcp-cs.UUCP
Thu Feb 6 14:44:09 AEST 1986
This is a bug in the dmf32 driver. I have seen several versions
of the driver with the same bug (including one I was running for
some time; I fixed it about an hour after posting it to net.sources,
as I recall . . .).
Look at /sys/vaxuba/dmf.c. Find the routine `dmfstart'. It will
have a few lines commented something like this:
/*
* If there are sleepers, and output has drained below low
* water mark, wake 'em up.
*/
The code under this comment *should* look like this:
if (tp->t_outq.c_cc <= TTLOWAT(tp)) {
if (tp->t_state&TS_ASLEEP) {
tp->t_state &= ~TS_ASLEEP;
wakeup((caddr_t)&tp->t_outq);
}
if (tp->t_wsel) {
selwakeup(tp->t_wsel, tp->t_state & TS_WCOLL);
tp->t_wsel = 0;
tp->t_state &= ~TS_WCOLL;
}
}
but the `if (tp->t_wsel)' clause is missing. Add it, compile and
boot the new kernel, and all should be well again.
--
In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 1415)
UUCP: seismo!umcp-cs!chris
CSNet: chris at umcp-cs ARPA: chris at mimsy.umd.edu
More information about the Comp.unix.wizards
mailing list