Date: Sun, 4 Nov 2001 22:16:44 -0800 (PST) From: Matthew Dillon <dillon@apollo.backplane.com> To: "David Xu" <davidx@viasoft.com.cn> Cc: "Peter Wemm" <peter@wemm.org>, <freebsd-hackers@FreeBSD.ORG> Subject: Re: pmap_collect() and PG_UNMANAGED Message-ID: <200111050616.fA56Gia43818@apollo.backplane.com> References: <20011101014322.1954A3808@overcee.netplex.com.au> <002f01c16277$e8ac22b0$ef01a8c0@davidwnt>
index | next in thread | previous in thread | raw e-mail
This looks fine, though I don't expect anyone will ever notice any
improvement in performance. But it's good for completeness. Peter,
could you MFC it to -stable?
-Matt
:> "David Xu" wrote:
:> > Hi,
:> >
:> > is there any reason why pmap_collect() in /sys/i386/i386/pmap.c does =
:> > not
:> > check PG_UNMANAGED flag? unmanaged page does not have pv_entry =
:> > associated,
:> > so call pmap_remove_all() has side effect, PG_MAPPED and PG_WRITEABLE =
:> > are=20
:> > roughly cleared.
:> >
:> > --
:> > David Xu
(Peter):
:> Did you have something like this in mind?
:>
:> @@ -1729,7 +1729,7 @@
:> for(i = 0; i < vm_page_array_size; i++) {
:> m = &vm_page_array[i];
:> if (m->wire_count || m->hold_count || m->busy ||
:> - (m->flags & PG_BUSY))
:> + (m->flags & (PG_BUSY | PG_UNMANAGED)))
:> continue;
:> pmap_remove_all(m);
:> }
:>
(David):
:Yes, I have changed and tested it yesterday, I have pushed a memory hog program into
:system, run it about half an hour, almost every program was swapped out, still without
:cause any problem, it seems it is safe to add this flag.
:
:David Xu
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200111050616.fA56Gia43818>
