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