DragonFly BSD
DragonFly commits List (threaded) for 2010-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: HAMMER VFS - Limit queued I/O during flush


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 15 Aug 2010 13:21:39 -0700 (PDT)

commit ba298df11258371e19c97d2843e37e503b9459c3
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Sun Aug 15 13:19:00 2010 -0700

    HAMMER VFS - Limit queued I/O during flush
    
    * Add sysctl vfs.hammer.limit_running_io and preset to a reasonable
      value.
    
    * The flusher was queueing all dirty buffers all at once, sometimes leading
      to 80MB+ worth of I/O.  This blew away dm_crypto (caused it to exceed
      its malloc limit), and also results in generally poor kernel memory
      behavior.
    
      Limit the amount of in-flight I/O allowed during a flush to ~10MB or so,
      which should be plenty.

Summary of changes:
 sys/vfs/hammer/hammer.h         |    5 ++++-
 sys/vfs/hammer/hammer_flusher.c |    2 ++
 sys/vfs/hammer/hammer_io.c      |   28 +++++++++++++++++++++++-----
 sys/vfs/hammer/hammer_vfsops.c  |   16 ++++++++++++++++
 4 files changed, 45 insertions(+), 6 deletions(-)

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


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]