From owner-cvs-src@FreeBSD.ORG Mon Aug 18 14:00:44 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EF2CF37B404; Mon, 18 Aug 2003 14:00:43 -0700 (PDT) Received: from mail.chesapeake.net (chesapeake.net [208.142.252.6]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3CB5E43FAF; Mon, 18 Aug 2003 14:00:42 -0700 (PDT) (envelope-from jroberson@chesapeake.net) Received: from localhost (jroberson@localhost) by mail.chesapeake.net (8.11.6/8.11.6) with ESMTP id h7IL0d238422; Mon, 18 Aug 2003 17:00:39 -0400 (EDT) (envelope-from jroberson@chesapeake.net) Date: Mon, 18 Aug 2003 17:00:38 -0400 (EDT) From: Jeff Roberson To: "Alan L. Cox" In-Reply-To: <3F413D48.FAC6A944@imimic.com> Message-ID: <20030818165803.P12093-100000@mail.chesapeake.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: Alan Cox cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/i386/i386 pmap.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Aug 2003 21:00:44 -0000 On Mon, 18 Aug 2003, Alan L. Cox wrote: > Jeff Roberson wrote: > > > > On Sun, 17 Aug 2003, Alan Cox wrote: > > > > > alc 2003/08/17 15:27:30 PDT > > > > > > FreeBSD src repository > > > > > > Modified files: > > > sys/i386/i386 pmap.c > > > Log: > > > Acquire the pte object's mutex when performing vm_page_grab(). Note: It is > > > my long-term objective to eliminate the pte object. In the near term, this > > > does, however, enable the addition of some vm object locking assertions. > > > > > > Revision Changes Path > > > 1.427 +4 -0 src/sys/i386/i386/pmap.c > > > > > > > What is your plan for the pte object? Will we still be able to page out > > page tables? > > > > Yes, expect no loss of functionality. The use of a pte object simply > reflects the pre-"VM_ALLOC_NOOBJ" days when vm_page_alloc() always > required an object to contain the allocated page. As some of my other > recent pmap changes have demonstrated it's equally easy and perhaps > faster to use the page table structure itself as the "container" rather > than doing vm_page_lookup() on the pte obj. (Annecdotal tests suggested > that eliminating the vm_page_lookup()s from places such as pmap_copy() > reduced "buildworld" time by ~0.5%.) > > Regards, > Alan > I thought that the pte object was required so that we could page out the page tables though? Will the pager still know that it can discard the pages? We should be able to recreate them from a fault, yes? Do you intend to modify the pager so that it will simply discard unwired NOOBJ pages? It seems like that would work. Thanks, Jeff