From owner-freebsd-current@FreeBSD.ORG Wed Aug 27 19:38:21 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BE5A3106566C for ; Wed, 27 Aug 2008 19:38:21 +0000 (UTC) (envelope-from ed@hoeg.nl) Received: from palm.hoeg.nl (mx0.hoeg.nl [IPv6:2001:610:652::211]) by mx1.freebsd.org (Postfix) with ESMTP id 887F78FC23 for ; Wed, 27 Aug 2008 19:38:21 +0000 (UTC) (envelope-from ed@hoeg.nl) Received: by palm.hoeg.nl (Postfix, from userid 1000) id ADAFA1CCF0; Wed, 27 Aug 2008 21:38:20 +0200 (CEST) Date: Wed, 27 Aug 2008 21:38:20 +0200 From: Ed Schouten To: Tor Egge Message-ID: <20080827193820.GO99951@hoeg.nl> References: <20080827.192844.45516910.Tor.Egge@cvsup.no.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="IScF4dT6yTbCq9Wi" Content-Disposition: inline In-Reply-To: <20080827.192844.45516910.Tor.Egge@cvsup.no.freebsd.org> User-Agent: Mutt/1.5.18 (2008-05-17) Cc: FreeBSD Current Subject: Re: HEADS DOWN: MPSAFE TTY layer integrated X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Aug 2008 19:38:21 -0000 --IScF4dT6yTbCq9Wi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hello Tor, * Tor Egge wrote: > The problem seems to be caused by a bad return statement inside ttyil_ioc= tl() > for the TIOCSETA case. >=20 > - Tor Egge >=20 > 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 > RCS file: /home/ncvs/src/sys/kern/tty.c,v > retrieving revision 1.284 > diff -u -r1.284 tty.c > --- sys/kern/tty.c 22 Aug 2008 21:27:37 -0000 1.284 > +++ sys/kern/tty.c 23 Aug 2008 22:00:31 -0000 > @@ -709,7 +709,6 @@ > if (error) > break; > bcopy(data, dev->si_drv2, sizeof(struct termios)); > - return (0); > break; > case TIOCGETD: > *(int *)data =3D TTYDISC; Ouch. That looks like a rather painful bug. I've got a kernels running with WITNESS/INVARIANTS/the whole lot enabled and I can confirm this was the issue. It should be fixed as of r182296. Thanks! --=20 Ed Schouten WWW: http://80386.nl/ --IScF4dT6yTbCq9Wi Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAki1rSwACgkQ52SDGA2eCwWmqwCfV3SdWqRJSBJzFvDr2Xoi+MUL 8KUAn023vENkljdh70woT3omHLjLtrfS =puv6 -----END PGP SIGNATURE----- --IScF4dT6yTbCq9Wi--