Problem with modem ports

Steve Hubert hubert at entropy.UUCP
Sat May 18 11:20:24 AEST 1985


> We seem to be having a problem with our modem ports.  We
> are running an 11/730 with a dmf-32 interface.  I have
> the modems into the two modem ports (ports 0 and 1) on the
> dmf.  It seems to work most of the time, but every now and
> then when I logout from the modem line, the system doesn't
> drop DTR and hang up the modem.  When this happens, if I
> hang up the line from the terminal end, the getty on that
> port goes away (as it should) and leaves an init, but when
> that line is called again I don't get a new getty; the system
> just hangs in the init.   The only way to get it back is to
> go in and kill the init on that line so that the master init
> (process 1) will restart a new one.  
> 
> Has anyone seen this problem before, and is there a fix?
> By the way, we're running 4.2bsd, if that makes a difference.
> 
>  Chris Moore (408) 749-4692
>  UUCP: {ucbvax,decwrl,ihnp4,allegra}!amdcad!amdimage!cmoore

I'm not sure if my problem is the same one but it is certainly
similar.  My dmf 0 and 1 ports are connected to terminals through a
Micom switch at 9600 baud.  Sometimes an init will hang in the open on
the dmf tty.  I am using the standard 4.2 dmf.c (it is version 6.1,
83/07/29).  I have looked at the tp->t_state variable of a hung line
using adb.  One of these lines waiting for its open to complete usually
has t_state = 0x2 = TS_WOPEN.  If that is the case, the line is not
hung and the open will succeed when the carrier is raised on the line.
When the line IS hung it has t_state = 0x206 which is TS_WOPEN |
TS_ISOPEN | TS_HUPCLS.  I can't figure out how the state ever gets set to
206.  I don't see anywhere where HUPCLS is set and it doesn't look like
ISOPEN and WOPEN should be able to be on at the same time.  We must be
at the following sleep in dmfopen() waiting for the wakeup in dmfrint(),
or maybe not.  Any ideas from the wizards?

	s = spl5();
	while ((tp->t_state & TS_CARR_ON) == 0) {
		tp->t_state |= TS_WOPEN;
		sleep((caddr_t)&tp->t_rawq, TTIPRI);
	}

Steve Hubert
 Dept. of Stat., U. of Wash, Seattle
 {decvax,ihnp4,ucbvax!lbl-csam}!uw-beaver!entropy!hubert
 hubert%entropy at uw-beaver



More information about the Comp.unix.wizards mailing list