Subject: Re: Serial port flowcontrol problems
To: None <osymh@gemini.oscs.montana.edu>
From: Stephen J. Roznowski <sjr@zombie.ncsc.mil>
List: amiga
Date: 10/13/1994 21:59:14
> From: osymh@gemini.oscs.montana.edu (Michael L. Hitch)
> 
> On Oct 13, 12:32am, "Stephen J. Roznowski" wrote:
> > I'm running an A3000 with a kernel built from the 941011 sup.
> > 
> > When I connect to a remote system using the 189 version of kermit at
> > 38400 and cause a lot output to be generated (for example, by executing
> > lptest), my modem locks up. Redoing the same test at 19200 seems to
> > work. Just before the session locks up I get a lot of ^Gs printed.
> > 
> > Has anyone else see this?
> 
>   I have had this problem before.  I was using kermit and connected to a
> remote system through a DEC terminal server.  If I connected to an
> Ultrix system and did a large amount of output (i.e. more than 1 screen
> full), my Ultrix session would lock up.  I could send a break and get
> back to the the terminal server, but my session to Ultrix was hung.  At
> times, I would see a number of ^G characters also.  If I connected to a
> VMS system and did some output, I would get some kind of I/O error.
> 
>   I think there is a problem in kermit that doesn't set crtscts on the
> serial line, even if you tell kermit to do rts/cts flow control.  When
> the NetBSD tty input handler gets a lot of input and the input buffer is
> close to filling up, it will try to stop the input.  If crtscts isn't
> set, it will send X-OFF.  The buffering of data in the serial input
> interrupt (up to 512 characters) will still allow a number of characters
> to be still be passed to the tty input, which could overflow the tty
> input buffer.  If the tty buffer fills up, the tty input routine echoes
> a bell (^G) for each character received.
> 
>   To further aggravate the problem, if the modem is configured for rts/cts
> flow control, the X-OFF sent by the tty input routine will be sent to the
> remote system.  In this case, there is very likely to be quite a bit of
> data buffered in the modems, which will also cause the tty input buffer
> to overflow.
> 
>   I think I was able to force the serial line to crtscts by either
> setting it prior to entering kermit, or executing an stty command after
> kermit set the line.
> 
>   I think I also saw a patch to kermit to fix setting crtscts on the
> serial port.  There is also a newer version of kermit available, which I
> think does set crtscts properly.  The kermit I'm running now sets
> crtscts properly, and I had much less trouble with this type of problem.

Well, this helped to fix the problem... If I do a "stty crtscts" on
both ends, I'm able to run at 38400 (yea!). I'm also running kermit(190)
now, but it didn't appear to set this automatically (it might be a new
option that I haven't found (yet) though).

Thanks,
-SR