git: kernel - zero pages during idle

Matthew Dillon dillon at crater.dragonflybsd.org
Sun May 16 10:49:48 PDT 2010


commit bb6811be56a9f299d28f69b6d6bf7233e1e7359a
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sun May 16 10:46:35 2010 -0700

    kernel - zero pages during idle
    
    Bring in base work by Venkatesh Srinivas:
    
    * vm/vm_zeropage.c and bzeront() code.
    
    Plus make the following adjustments:
    
    * Move the bzeront code from platform/ to cpu/ and add a x86_64 version
      of bzeront().
    
    * Expose the page zeroing rate via sysctl and adjust the default upwards.
    
    * Expose the movnti feature via sysctl (defaults to off).
    
    * Change poll interval from 1 second to 1/10 second.
    
    * Correct a bug where the MP lock was not being initially released.  The
      thread is created with the MP lock held.  This was causing the hysteresis
      check to fail.
    
    * Correct a bug where vm_page_zero_count was being double-incremented
      due to changes in how the zerod page is freed.
    
    * Clean up the code syntax a bit.
    
    Submitted-by: Venkatesh Srinivas <me at endeavour.zapto.org>

Summary of changes:
 sys/conf/files                    |    1 +
 sys/cpu/i386/misc/bzeront.s       |   58 ++++++++++
 sys/cpu/x86_64/misc/bzeront.s     |   55 ++++++++++
 sys/platform/pc32/conf/files      |    1 +
 sys/platform/pc64/conf/files      |    1 +
 sys/platform/vkernel/conf/files   |    1 +
 sys/platform/vkernel64/conf/files |    2 +
 sys/sys/systm.h                   |    1 +
 sys/sys/thread.h                  |    1 +
 sys/vm/vm_page.c                  |   38 +++++++-
 sys/vm/vm_page.h                  |    1 +
 sys/vm/vm_zeroidle.c              |  216 +++++++++++++++++++++++++++++++++++++
 12 files changed, 375 insertions(+), 1 deletions(-)
 create mode 100644 sys/cpu/i386/misc/bzeront.s
 create mode 100644 sys/cpu/x86_64/misc/bzeront.s
 create mode 100644 sys/vm/vm_zeroidle.c

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


-- 
DragonFly BSD source repository





More information about the Commits mailing list