diff options
author | alc <alc@FreeBSD.org> | 2012-05-29 15:41:20 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2012-05-29 15:41:20 +0000 |
commit | ef5ae2f2e5a6d2d8b8daf9f2f1e7555a4ea8c94f (patch) | |
tree | 4232524ed131713aad08594544a7aa28b44b87f8 /contrib/llvm/lib/Support/Unix | |
parent | cb69eb600cac273a7b85e63780f3d7e725e25f0c (diff) | |
download | FreeBSD-src-ef5ae2f2e5a6d2d8b8daf9f2f1e7555a4ea8c94f.zip FreeBSD-src-ef5ae2f2e5a6d2d8b8daf9f2f1e7555a4ea8c94f.tar.gz |
Rename pmap_collect() to pmap_pv_reclaim() and rewrite it such that it no
longer uses the active and inactive paging queues. Instead, the pmap now
maintains an LRU-ordered list of pv entry pages, and pmap_pv_reclaim() uses
this list to select pv entries for reclamation.
Note: The old pmap_collect() tried to avoid reclaiming mappings for pages
that have either a hold_count or a busy field that is non-zero. However,
this isn't necessary for correctness, and the locking in pmap_collect() was
insufficient to guarantee that such mappings weren't reclaimed. The new
pmap_pv_reclaim() doesn't even try.
Tested by: sbruno
MFC after: 5 weeks
Diffstat (limited to 'contrib/llvm/lib/Support/Unix')
0 files changed, 0 insertions, 0 deletions