git: kernel - Improve vm.prefault_pages + misc

Matthew Dillon dillon at crater.dragonflybsd.org
Sun Jul 10 19:24:22 PDT 2016


commit cfffe7b1e159fff87fe777e60c1f1a2e838f22a6
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sun Jul 10 17:14:56 2016 -0700

    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.

Summary of changes:
 sys/platform/pc64/x86_64/pmap.c |  8 +++--
 sys/vm/vm_fault.c               | 80 +++++++++++++++++++++++------------------
 sys/vm/vm_object.c              | 12 ++++---
 3 files changed, 60 insertions(+), 40 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/cfffe7b1e159fff87fe777e60c1f1a2e838f22a6


-- 
DragonFly BSD source repository



More information about the Commits mailing list