git: hammer2 hammer2 - Implement depth limit for stack recursion, embedded data fixes

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Mar 22 16:54:41 PDT 2012


commit 1c9f601ee43990dde3bb308d425efa117df69bdf
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Mar 22 16:52:11 2012 -0700

    hammer2 - Implement depth limit for stack recursion, embedded data fixes
    
    * Implement a procedure call depth limit in hammer2_chain_flush().
      Dirty elements that are too deep are placed on a deferral list and
      then executed at the top-level.  Worst case stack depth is reduced 40:1.
    
    * Fix a bug when transitioning from embedded data to indirect data.

Summary of changes:
 sys/vfs/hammer2/hammer2.h        |   10 +-
 sys/vfs/hammer2/hammer2_chain.c  |  293 ++++++++++++++++++++++++++-----------
 sys/vfs/hammer2/hammer2_vfsops.c |   11 ++-
 sys/vfs/hammer2/hammer2_vnops.c  |   35 ++++-
 4 files changed, 251 insertions(+), 98 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/1c9f601ee43990dde3bb308d425efa117df69bdf


-- 
DragonFly BSD source repository





More information about the Commits mailing list