kernel - Improve vm.prefault_pages + misc
authorMatthew Dillon <dillon@apollo.backplane.com>
Mon, 11 Jul 2016 00:14:56 +0000 (17:14 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Mon, 11 Jul 2016 00:14:56 +0000 (17:14 -0700)
commitcfffe7b1e159fff87fe777e60c1f1a2e838f22a6
tree3e56b73f046e74c4053f1b517aac746681840a7e
parent5411d8f15e92c1aaa25076860bab3d3caabab347
kernel - Improve vm.prefault_pages + misc

* vm_prefault_quick() now gives up more quickly when things don't work out.
  This fixes a scaling issue when vm.prefault_pages is set very high.  A
  prefault failure would still test every page and kill performance.
  (example: linear zfod burst).

* Adjust pmap page removal loop to yield every 64 pages.  Before it was
  yielding every 4096*8 pages.

* Adjust vm_object_*() routines to yield every 64 pages as well.
sys/platform/pc64/x86_64/pmap.c
sys/vm/vm_fault.c
sys/vm/vm_object.c