*BSD News Article 10730


Return to BSD News archive

Received: by minnie.vk1xwt.ampr.org with NNTP
	id AA565 ; Fri, 05 Feb 93 02:01:22 EST
Path: sserve!manuel.anu.edu.au!munnari.oz.au!spool.mu.edu!howland.reston.ans.net!bogus.sura.net!udel!sbcs.sunysb.edu!stark.UUCP!gene
From: gene@stark.uucp (Gene Stark)
Newsgroups: comp.unix.bsd
Subject: Re: system hang with cgd's com-beta?
Date: 3 Feb 93 06:41:19
Organization: Gene Stark's home system
Lines: 31
Distribution: world
Message-ID: <GENE.93Feb3064119@stark.stark.uucp>
References: <1993Feb2.180511.25490@TorreyPinesCA.ncr.com>
NNTP-Posting-Host: stark.uucp
In-reply-to: eae@TorreyPinesCA.ncr.com's message of Tue, 2 Feb 93 18:05:11 GMT

Eric Evans writes:

>I just installed Chris Demetriou com-beta in an attempt to solve some
>of my serial woes and am getting a system hang when an open() is attempted
>on one of the com ports.
>
>My com card is standard (16450) and it did work prior to adding com-beta
>(just not as well as I'd like, works fine from dos).  I started from
>0.1 dist with the 0.2 patches then added com-beta without any problem.
>
>Now any access (comcontrol or tip) to the /dev/tty00 hangs the system.

CGD's com driver is very fussy about having the "carrier detect" line
on the port asserted before an open will complete.  Make sure that if
you have the port connected to a terminal then you have proper jumpers
installed in the connector.  (I believe CD <--> DTR is the one that makes
sense, but I always get this wrong and have to fix it.)  If you have the
port connected to a modem, you will not be able to open the "com??" port
unless you either: (a) cause the modem to assert CD unconditionally, or
(b) mknod the "cua??" callout side of the port as per CGD's instructions
then do "comcontrol /dev/cua?? bidir", and finally open the cua?? side
of the port instead of the com?? side.

You can also get useful information about what is going wrong by doing
a "ps alx" when your process hangs.  Have a look at the string that is
listed under the WCHAN heading.  It will be something like "ttyopn" or
"select", etc. which you can trace by scanning the source code in com.c
and also in tty.c.

Good luck!
						- Gene Stark