Date: Mon, 2 Mar 2009 10:26:52 +0100 From: Ed Schouten <ed@80386.nl> To: Yuriy Tsibizov <Yuriy.Tsibizov@gfk.com> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: mutex Giant recursed at /usr/src/sys/kern/tty.c:1222 (via linux_ioctl_termio) Message-ID: <20090302092652.GD19161@hoeg.nl> In-Reply-To: <BA0C4C2EEBEBFD448415F22CE73EEC0C13CA10@ex-be-1.hhp.local> References: <BA0C4C2EEBEBFD448415F22CE73EEC0C13CA10@ex-be-1.hhp.local>
next in thread | previous in thread | raw e-mail | index | archive | help
--wUMz9o/vfMbinXcu Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable HI Yuriy, The subject line says enough: the Linuxolator calls into the TTY layer holding Giant. I changed the TTY layer some time ago to never acquire Giant recursively by making /dev/console MPSAFE. It can only happen that drivers pick up Giant recursively before calling into the TTY layer, but this is generally not a problem. The assertion in the code isn't really required. It isn't necessarily bad to recurse on Giant, but looking forward to a Giantless kernel, I think it's not a bad idea to keep it there. Two ways to fix this problem: - Fix the Linuxolator to not require Giant (which I like). - Remove MA_NOTRECURSED from tty_(timed)wait() (which I don't like). Because I'm now rdivacky's mentor, I talk a lot to him anyway. I'll discuss this subject with him. Thanks for reporting this issue. --=20 Ed Schouten <ed@80386.nl> WWW: http://80386.nl/ --wUMz9o/vfMbinXcu Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEARECAAYFAkmrplwACgkQ52SDGA2eCwV7jwCfZnFeg7ENFt2+cY5a1yTAH6td CF8AnjWr3q9rKB6IqPBvO+rcVCYsTkJo =Aec/ -----END PGP SIGNATURE----- --wUMz9o/vfMbinXcu--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090302092652.GD19161>