cvs commit: src/sys/alpha/alpha pmap.c src/sys/amd64/amd64 pmap.c
src/sys/i386/i386 pmap.c src/sys/ia64/ia64 pmap.c
src/sys/powerpc/powerpc pmap.c src/sys/sparc64/sparc64 pmap.c
src/sys/vm pmap.h vm_pageout.c
Alan Cox
alc at FreeBSD.org
Wed Nov 9 08:19:23 GMT 2005
alc 2005-11-09 08:19:21 UTC
FreeBSD src repository
Modified files:
sys/alpha/alpha pmap.c
sys/amd64/amd64 pmap.c
sys/i386/i386 pmap.c
sys/ia64/ia64 pmap.c
sys/powerpc/powerpc pmap.c
sys/sparc64/sparc64 pmap.c
sys/vm pmap.h vm_pageout.c
Log:
Reimplement the reclamation of PV entries. Specifically, perform
reclamation synchronously from get_pv_entry() instead of
asynchronously as part of the page daemon. Additionally, limit the
reclamation to inactive pages unless allocation from the PV entry zone
or reclamation from the inactive queue fails. Previously, reclamation
destroyed mappings to both inactive and active pages. get_pv_entry()
still, however, wakes up the page daemon when reclamation occurs. The
reason being that the page daemon may move some pages from the active
queue to the inactive queue, making some new pages available to future
reclamations.
Print the "reclaiming PV entries" message at most once per minute, but
don't stop printing it after the fifth time. This way, we do not give
the impression that the problem has gone away.
Reviewed by: tegge
Revision Changes Path
1.184 +41 -30 src/sys/alpha/alpha/pmap.c
1.533 +42 -33 src/sys/amd64/amd64/pmap.c
1.538 +42 -35 src/sys/i386/i386/pmap.c
1.170 +65 -14 src/sys/ia64/ia64/pmap.c
1.103 +0 -2 src/sys/powerpc/powerpc/pmap.c
1.150 +0 -2 src/sys/sparc64/sparc64/pmap.c
1.73 +0 -2 src/sys/vm/pmap.h
1.270 +0 -34 src/sys/vm/vm_pageout.c
More information about the cvs-src
mailing list