Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Aug 2003 17:11:03 -0400 (EDT)
From:      Jeff Roberson <jroberson@chesapeake.net>
To:        "Alan L. Cox" <alc@imimic.com>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/i386/i386 pmap.c
Message-ID:  <20030818171003.Y12093-100000@mail.chesapeake.net>
In-Reply-To: <20030818165803.P12093-100000@mail.chesapeake.net>

index | next in thread | previous in thread | raw e-mail

On Mon, 18 Aug 2003, Jeff Roberson wrote:

> 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
>

Nevermind, I misunderstood.  According to jake, we only discard page
tables once we discard all of the pages that they map.  The rest of the
time the page table pages are wired.




home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030818171003.Y12093-100000>