git: HAMMER VFS - Improve initial B-Tree packing

Matthew Dillon dillon at
Tue Feb 9 00:15:00 PST 2010

commit fa2b9a03ee6eefbf2c87a4d9852f4da3a96a0d50
Author: Matthew Dillon <dillon at>
Date:   Tue Feb 9 00:10:26 2010 -0800

    HAMMER VFS - Improve initial B-Tree packing
    * Detect the case where B-Tree leafs are being laid down sequentially,
      such as when creating a large file.  When linear operation is detected
      split leafs 75:25 instead of 50:50.  This greatly improves fill ratios.
      It should be noted that the HAMMER flush sorts by inode so directory
      entries will also tend to benefit.
    * This only effects (improves) the initial B-Tree layout.  The overnight
      hammer cleanup will refactor the B-Tree to a more optimal state

Summary of changes:
 sys/vfs/hammer/hammer.h       |    1 +
 sys/vfs/hammer/hammer_btree.c |   58 +++++++++++++++++++++++++++++++---------
 sys/vfs/hammer/hammer_inode.c |    7 ++++-
 3 files changed, 52 insertions(+), 14 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list