cvs commit: src/sys/vfs/hammer hammer.h hammer_freemap.c hammer_io.c hammer_ondisk.c hammer_reblock.c hammer_undo.c

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Mar 24 16:52:41 PDT 2008


dillon      2008/03/24 16:50:23 PDT

DragonFly src repository

  Modified files:
    sys/vfs/hammer       hammer.h hammer_freemap.c hammer_io.c 
                         hammer_ondisk.c hammer_reblock.c 
                         hammer_undo.c 
  Log:
  HAMMER 35/many: Stabilization pass, cleanups
  
  * Fix a buffer load race which could result in an assertion or panic
    related to a referenced HAMMER buffer with a NULL bp.  The problem was
    that the loading flag must be used when releasing the buffer as well
    as when acquiring the buffer.  Change the loading flag to a loading
    count.
  
  * Do not lose flush requests.  The flush request now stays flagged until
    the buffer is able to be flushed.
  
  * Fix stale blockmap offsets cached in hammer_buffer.  Clear the cached
    offset when freeing a big block from the blockmap.  NOTE: We do not yet
    try to index buffers based on the blockmap offset but we should.
  
  * Remove the old write ordering code in preparation for redoing the algorithm.
  
  * General code cleanups.
  
  Revision  Changes    Path
  1.43      +6 -6      src/sys/vfs/hammer/hammer.h
  1.5       +1 -0      src/sys/vfs/hammer/hammer_freemap.c
  1.23      +19 -57    src/sys/vfs/hammer/hammer_io.c
  1.35      +63 -33    src/sys/vfs/hammer/hammer_ondisk.c
  1.5       +8 -4      src/sys/vfs/hammer/hammer_reblock.c
  1.3       +1 -4      src/sys/vfs/hammer/hammer_undo.c


http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer.h.diff?r1=1.42&r2=1.43&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_freemap.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_io.c.diff?r1=1.22&r2=1.23&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ondisk.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_reblock.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_undo.c.diff?r1=1.2&r2=1.3&f=u





More information about the Commits mailing list