cvs commit: src/sys/vfs/hammer hammer.h hammer_blockmap.c hammer_inode.c hammer_ondisk.c hammer_undo.c hammer_vfsops.c hammer_vnops.c

Matthew Dillon dillon at crater.dragonflybsd.org
Wed Jun 11 17:17:04 PDT 2008


dillon      2008/06/11 17:16:10 PDT

DragonFly src repository

  Modified files:
    sys/vfs/hammer       hammer.h hammer_blockmap.c hammer_inode.c 
                         hammer_ondisk.c hammer_undo.c 
                         hammer_vfsops.c hammer_vnops.c 
  Log:
  HAMMER 54B/Many: Performance tuning.
  
  * Fix a major performance issue in the UNDO generation code.  The code
    was calling hammer_bread() instead of hammer_bnew() for 'new' undo buffers,
    meaning it was doing a read-modify-write on the disk instead of just a
    write.
  
    This fix results in a MAJOR improvement in performance across the board.
  
  * Replace the only lockmgr lock in the module with a hammer_lock.
  
  * Tweak hammer_inode_waitreclaims().  This will probably need even more
    tweaking as time passes.
  
  Revision  Changes    Path
  1.82      +7 -5      src/sys/vfs/hammer/hammer.h
  1.18      +6 -6      src/sys/vfs/hammer/hammer_blockmap.c
  1.72      +12 -1     src/sys/vfs/hammer/hammer_inode.c
  1.55      +3 -2      src/sys/vfs/hammer/hammer_ondisk.c
  1.16      +18 -11    src/sys/vfs/hammer/hammer_undo.c
  1.46      +2 -2      src/sys/vfs/hammer/hammer_vfsops.c
  1.67      +1 -1      src/sys/vfs/hammer/hammer_vnops.c


http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer.h.diff?r1=1.81&r2=1.82&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_blockmap.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_inode.c.diff?r1=1.71&r2=1.72&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ondisk.c.diff?r1=1.54&r2=1.55&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_undo.c.diff?r1=1.15&r2=1.16&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vfsops.c.diff?r1=1.45&r2=1.46&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vnops.c.diff?r1=1.66&r2=1.67&f=u





More information about the Commits mailing list