This change introduces 'vm_fault_wire', a memory wiring routine with
a fast path for objects implementing the own 'pgo_populate' pager
methods. The fast path (vm_fault_wire_quick) uses 'vm_pager_populate'
to preallocate pages for the entire map entry instead of using 'vm_page_grab'
for each 0-order pager. Unlike the slow path, it is superpage-aware and
will avoid extraneous page lookup when processing pages whose psind
is larger than zero. This change is mostly aimed at speeding up memory
wiring in the bhyve hypervisor.
Details
Details
See the test plan in D60752.
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Skipped - Unit
Tests Skipped - Build Status
Buildable 78245 Build 75128: arc lint + arc unit