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

git: kernel - Fix cluster_read random I/O heuristic


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sun, 28 Mar 2010 11:29:28 -0700 (PDT)

commit 69adbed48cd5565446e8013fcc5131405a9e7c05
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Sun Mar 28 11:23:04 2010 -0700

    kernel - Fix cluster_read random I/O heuristic
    
    * cluster_read was improperly accounting for the seqcount in the random
      I/O heuristic, failing to reduce the count in the loop which led to
      fairly maximal sequential read-ahead even for random I/O.
    
      Properly reduce the seqcount for both the initial buffer and in the
      read-ahead loop, which has the effect of terminating the loop early
      or not running it at all when the I/O is random.
    
    * HAMMER was not scaling the seqcount for the heuristic to BKVASIZE.
    
    * Thanks to Jan for spending the time required to bisect and track down the
      problem!
    
    Reported-by: Jan Lentfer <Jan.Lentfer@web.de>

Summary of changes:
 sys/kern/vfs_cluster.c        |   17 ++++++++++-------
 sys/vfs/hammer/hammer_vnops.c |    4 ++--
 2 files changed, 12 insertions(+), 9 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/69adbed48cd5565446e8013fcc5131405a9e7c05


-- 
DragonFly BSD source repository



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