From owner-svn-src-all@FreeBSD.ORG Sat Dec 18 11:23:51 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 51D0F106566C; Sat, 18 Dec 2010 11:23:51 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id C2AE88FC18; Sat, 18 Dec 2010 11:23:50 +0000 (UTC) Received: from deviant.kiev.zoral.com.ua (root@deviant.kiev.zoral.com.ua [10.1.1.148]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id oBIBLH4r077438 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 18 Dec 2010 13:21:17 +0200 (EET) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4) with ESMTP id oBIBLHDE020343; Sat, 18 Dec 2010 13:21:17 +0200 (EET) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.4/8.14.4/Submit) id oBIBLHZ8020342; Sat, 18 Dec 2010 13:21:17 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Sat, 18 Dec 2010 13:21:17 +0200 From: Kostik Belousov To: Joel Dahl Message-ID: <20101218112117.GA33073@deviant.kiev.zoral.com.ua> References: <201012092016.oB9KG05P049565@svn.freebsd.org> <20101218070800.GA59878@pluto.vnode.local> <4D0C7C0F.4000703@rice.edu> <20101218103542.GB59878@pluto.vnode.local> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="i8JMrHMYKg4kZNKW" Content-Disposition: inline In-Reply-To: <20101218103542.GB59878@pluto.vnode.local> User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-3.4 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00, DNS_FROM_OPENWHOIS autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: Alan Cox , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Alan Cox Subject: Re: svn commit: r216333 - head/sys/i386/i386 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 18 Dec 2010 11:23:51 -0000 --i8JMrHMYKg4kZNKW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Dec 18, 2010 at 11:35:42AM +0100, Joel Dahl wrote: > On 18-12-2010 3:17, Alan Cox wrote: > > Joel Dahl wrote: > > > On 09-12-2010 20:16, Alan Cox wrote: > > > =20 > > >> Author: alc > > >> Date: Thu Dec 9 20:16:00 2010 > > >> New Revision: 216333 > > >> URL: http://svn.freebsd.org/changeset/base/216333 > > >> > > >> Log: > > >> When r207410 eliminated the acquisition and release of the page qu= eues > > >> lock from pmap_extract_and_hold(), it didn't take into account that > > >> pmap_pte_quick() sometimes requires the page queues lock to be hel= d. > > >> This change reimplements pmap_extract_and_hold() such that it no > > >> longer uses pmap_pte_quick(), and thus never requires the page que= ues > > >> lock. > > >> =20 > > >> For consistency, adopt the same idiom as used by the new > > >> implementation of pmap_extract_and_hold() in pmap_extract() and > > >> pmap_mincore(). It also happens to make these functions shorter. > > >> =20 > > > > > > Hi Alan, > > > > > > This commit makes my laptop hang everytime I quit X. I just get a bl= ack > > > screen and the machine won't respond to any keys. Everything works i= f I > > > go back to r216330. > > > > > > =20 > >=20 > > Can you please try the following change? >=20 > I'm afraid the patch didn't make any difference. It still hangs. I already looked at the similar report. It seems that the driver allocates a page using kmem_alloc_contig(), then creates OBJT_SG object, and changes the mapping to use the fictitious page instantiated by sg object. Since kmem_free() sees wired mapping, it calls vm_fault_unwire(), which is incompatible with fictitious wired pages. I cannot guarantee that this is definitely what happens, but backtrace looked plausible. --i8JMrHMYKg4kZNKW Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (FreeBSD) iEYEARECAAYFAk0MmSwACgkQC3+MBN1Mb4go1gCgyMQ7qaqKw82wHfhSl2GFbghR 7jcAn2tZyjfuX3tf54yyj3pUh2K6AID9 =wkly -----END PGP SIGNATURE----- --i8JMrHMYKg4kZNKW--