From owner-svn-src-head@FreeBSD.ORG Sun Sep 19 15:06:30 2010 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1EC6B10657B0; Sun, 19 Sep 2010 15:06:30 +0000 (UTC) (envelope-from ed@hoeg.nl) Received: from mx0.hoeg.nl (unknown [IPv6:2a01:4f8:101:5343::aa]) by mx1.freebsd.org (Postfix) with ESMTP id A46258FC12; Sun, 19 Sep 2010 15:06:29 +0000 (UTC) Received: by mx0.hoeg.nl (Postfix, from userid 1000) id AAA042A28D28; Sun, 19 Sep 2010 17:06:28 +0200 (CEST) Date: Sun, 19 Sep 2010 17:06:28 +0200 From: Ed Schouten To: Kostik Belousov Message-ID: <20100919150628.GN56986@hoeg.nl> References: <201009191421.o8JELdNY004586@svn.freebsd.org> <20100919143047.GB2389@deviant.kiev.zoral.com.ua> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="HPvEMLO7QB7Fh5r+" Content-Disposition: inline In-Reply-To: <20100919143047.GB2389@deviant.kiev.zoral.com.ua> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r212860 - head/sys/kern X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 19 Sep 2010 15:06:30 -0000 --HPvEMLO7QB7Fh5r+ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable * Kostik Belousov wrote: > Shouldn't you always report CLOCAL for console then ? Hmmm... That would be a lot more elegant, also for callout devices. The change I just committed, doesn't take a loss of SER_DCD into account after opening the device. Any comments on the following patch? %%% Index: sys/kern/tty.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/kern/tty.c (revision 212860) +++ sys/kern/tty.c (working copy) @@ -263,12 +263,14 @@ =20 if (!tty_opened(tp)) { /* Set proper termios flags. */ - if (TTY_CALLOUT(tp, dev)) { + if (TTY_CALLOUT(tp, dev)) tp->t_termios =3D tp->t_termios_init_out; - } else { + else tp->t_termios =3D tp->t_termios_init_in; - } ttydevsw_param(tp, &tp->t_termios); + /* Prevent modem control on callout devices and /dev/console. */ + if (TTY_CALLOUT(tp, dev) || dev =3D=3D dev_console) + tp->t_termios.c_cflag |=3D CLOCAL; =20 ttydevsw_modem(tp, SER_DTR|SER_RTS, 0); =20 @@ -281,9 +283,8 @@ } =20 /* Wait for Carrier Detect. */ - if (!TTY_CALLOUT(tp, dev) && (oflags & O_NONBLOCK) =3D=3D 0 && - (tp->t_termios.c_cflag & CLOCAL) =3D=3D 0 && - dev !=3D dev_console) { + if ((oflags & O_NONBLOCK) =3D=3D 0 && + (tp->t_termios.c_cflag & CLOCAL) =3D=3D 0) { while ((ttydevsw_modem(tp, 0, 0) & SER_DCD) =3D=3D 0) { error =3D tty_wait(tp, &tp->t_dcdwait); if (error !=3D 0) %%% --=20 Ed Schouten WWW: http://80386.nl/ --HPvEMLO7QB7Fh5r+ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (FreeBSD) iEYEARECAAYFAkyWJvQACgkQ52SDGA2eCwVNxgCeOOk0PdC1GeNPwxLCmNsaXJoc 4ngAnijmnHSg0Aj3Yrvhi+BdkAVgffRq =hMVG -----END PGP SIGNATURE----- --HPvEMLO7QB7Fh5r+--