git: kernel - Fix fragmentation and object list scan bug in swapcache

Matthew Dillon dillon at crater.dragonflybsd.org
Tue Nov 29 20:50:50 PST 2011


commit f5f6d24720b2a6d59adc2d6af68754ed3382ff20
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Tue Nov 29 20:46:03 2011 -0800

    kernel - Fix fragmentation and object list scan bug in swapcache
    
    * When swapcache reaches maxswappct (typically 75% of swap) it reduces
      swap use before allowing it to continue to build again, with some
      hysteresis.
    
    * The cleanup phase which reduces swap use was seriously fragmenting swap
      space by cleaning up too small a portion of each VM object.
    
    * Increase the amount cleaned up before moving onto the next VM object.
    
    * Fix bugs in the vm_object_list traversal which could result in a bad
      object being accessed followed by a panic.

Summary of changes:
 sys/vm/vm_swapcache.c |  127 +++++++++++++++++++++++++++++++++---------------
 1 files changed, 87 insertions(+), 40 deletions(-)

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


-- 
DragonFly BSD source repository





More information about the Commits mailing list