cvs commit: src/sys/conf files src/sys/vfs/hammer Makefile hammer.h hammer_btree.c hammer_btree.h hammer_cursor.c hammer_cursor.h hammer_inode.c hammer_ioctl.c hammer_ioctl.h hammer_mirror.c hammer_mount.h hammer_object.c hammer_prune.c ...
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Jun 25 21:08:07 PDT 2008
dillon 2008/06/25 21:06:23 PDT
DragonFly src repository
Modified files:
sys/conf files
sys/vfs/hammer Makefile hammer.h hammer_btree.c
hammer_btree.h hammer_cursor.c
hammer_cursor.h hammer_inode.c
hammer_ioctl.c hammer_ioctl.h
hammer_mirror.c hammer_mount.h
hammer_object.c hammer_prune.c
hammer_transaction.c hammer_vfsops.c
hammer_vnops.c
Log:
HAMMER 59A/Many: Mirroring related work (and one bug fix).
* BUG FIX: Fix a bug in directory hashkey generation. The iterator could
sometimes conflict with a key already on-disk and interfere with a pending
deletion. The chance of this occuring was miniscule but not 0. Now fixed.
The fix also revamps the directory iterator code, moving it all to one
place and removing it from two other places.
* PRUNING CHANGE: The pruning code no longer shifts the create_tid and
delete_tid of adjacent records to fill gaps. This means that historical
queries must either use snapshot softlinks or use a fine-grained
transaction id greater then the most recent snapshot softlink.
fine-grained historical access still works up to the first snapshot
softlink.
* Clean up the cursor code responsible for acquiring the parent node.
* Add the core mirror ioctl read/write infrastructure. This work is still
in progress.
- ioctl commands
- pseudofs enhancements, including st_dev munging.
- mount options
- transaction id and object id conflictless allocation
- initial mirror_tid recursion up the B-Tree (not finished)
- B-Tree mirror scan optimizations to skip sub-hierarchies that do not
need to be scanned (requires mirror_tid recursion to be 100% working).
Revision Changes Path
1.218 +1 -0 src/sys/conf/files
1.12 +1 -1 src/sys/vfs/hammer/Makefile
1.93 +11 -0 src/sys/vfs/hammer/hammer.h
1.58 +170 -4 src/sys/vfs/hammer/hammer_btree.c
1.24 +2 -0 src/sys/vfs/hammer/hammer_btree.h
1.33 +9 -42 src/sys/vfs/hammer/hammer_cursor.c
1.22 +2 -1 src/sys/vfs/hammer/hammer_cursor.h
1.85 +1 -1 src/sys/vfs/hammer/hammer_inode.c
1.24 +8 -0 src/sys/vfs/hammer/hammer_ioctl.c
1.15 +9 -0 src/sys/vfs/hammer/hammer_ioctl.h
1.2 +339 -19 src/sys/vfs/hammer/hammer_mirror.c
1.7 +1 -0 src/sys/vfs/hammer/hammer_mount.h
1.76 +44 -31 src/sys/vfs/hammer/hammer_object.c
1.8 +17 -24 src/sys/vfs/hammer/hammer_prune.c
1.22 +10 -4 src/sys/vfs/hammer/hammer_transaction.c
1.54 +2 -2 src/sys/vfs/hammer/hammer_vfsops.c
1.77 +6 -0 src/sys/vfs/hammer/hammer_vnops.c
http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.diff?r1=1.217&r2=1.218&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/Makefile.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer.h.diff?r1=1.92&r2=1.93&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_btree.c.diff?r1=1.57&r2=1.58&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_btree.h.diff?r1=1.23&r2=1.24&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_cursor.c.diff?r1=1.32&r2=1.33&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_cursor.h.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_inode.c.diff?r1=1.84&r2=1.85&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ioctl.c.diff?r1=1.23&r2=1.24&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ioctl.h.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_mirror.c.diff?r1=1.1&r2=1.2&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_mount.h.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_object.c.diff?r1=1.75&r2=1.76&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_prune.c.diff?r1=1.7&r2=1.8&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_transaction.c.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vfsops.c.diff?r1=1.53&r2=1.54&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vnops.c.diff?r1=1.76&r2=1.77&f=u
More information about the Commits
mailing list