cb01228cf4
obey the preferences expressed by freelist assignment, to avoid wasting valuable "low memory" to devices which don't really need it. comments: -I'm not sure searching the physsegs within a freelist beginning with the biggest is the right thing. This is what the "memory steal" code in uvm_page.c does, so keep it consistent. -There seems to be some confusion whether the upper address limit passed is inclusive or not. Stays on the save side, possibly leaving one page out. -The boundary/pagemask check can be simplified, also some arguments passed are only used for diagnostic checks. -Integration with UVM_PAGE_TRKOWN??? |
||
---|---|---|
.. | ||
Makefile | ||
uvm.h | ||
uvm_amap.c | ||
uvm_amap.h | ||
uvm_amap_i.h | ||
uvm_anon.c | ||
uvm_anon.h | ||
uvm_aobj.c | ||
uvm_aobj.h | ||
uvm_bio.c | ||
uvm_ddb.h | ||
uvm_device.c | ||
uvm_device.h | ||
uvm_extern.h | ||
uvm_fault.c | ||
uvm_fault.h | ||
uvm_fault_i.h | ||
uvm_glue.c | ||
uvm_glue.h | ||
uvm_init.c | ||
uvm_io.c | ||
uvm_km.c | ||
uvm_km.h | ||
uvm_loan.c | ||
uvm_loan.h | ||
uvm_map.c | ||
uvm_map.h | ||
uvm_map_i.h | ||
uvm_meter.c | ||
uvm_mmap.c | ||
uvm_object.h | ||
uvm_page.c | ||
uvm_page.h | ||
uvm_page_i.h | ||
uvm_pager.c | ||
uvm_pager.h | ||
uvm_pager_i.h | ||
uvm_param.h | ||
uvm_pdaemon.c | ||
uvm_pdaemon.h | ||
uvm_pglist.c | ||
uvm_pglist.h | ||
uvm_pmap.h | ||
uvm_prot.h | ||
uvm_stat.c | ||
uvm_stat.h | ||
uvm_swap.c | ||
uvm_swap.h | ||
uvm_unix.c | ||
uvm_user.c | ||
uvm_vnode.c |