On Tue, Dec 21, 2010 at 11:29:01AM -0800, Matt Thomas wrote:
Could you elaborate the reason why so?
I've already proven that __HAVE_VM_PAGE_MD pmaps don't need struct
vm_page *.
Probably.
"Finding physseg" == "(reverse) lookup of vm_page -> vm_physseg".
It is done only once (for each page) in pagers that use vm_page.
Is the biggest concern lookup cost? Then I'd point out that
uvm_pageismanaged() in pmap_enter() should die. Cacheability is
decided by how VA is mapped. Those uvm_pageismanaged() calls are
both inefficient and wrong.