cvs commit: src/sbin/newfs_hammer newfs_hammer.c newfs_hammer.h ondisk.c src/sys/vfs/hammer hammer.h hammer_btree.c hammer_cursor.c hammer_cursor.h hammer_disk.h hammer_inode.c hammer_io.c hammer_object.c hammer_ondisk.c hammer_subs.c ...
Matthew Dillon
dillon at crater.dragonflybsd.org
Mon Nov 19 23:21:12 PST 2007
dillon 2007/11/19 23:16:28 PST
DragonFly src repository
Modified files:
sbin/newfs_hammer newfs_hammer.c newfs_hammer.h ondisk.c
sys/vfs/hammer hammer.h hammer_btree.c hammer_cursor.c
hammer_cursor.h hammer_disk.h
hammer_inode.c hammer_io.c
hammer_object.c hammer_ondisk.c
hammer_subs.c hammer_transaction.c
hammer_vfsops.c hammer_vnops.c
Log:
HAMMER 4/many - more core infrastructure
* Add reserved areas for a boot area and a memory log.
* Add merged scan operations which are the core procedures used to execute
most filesystem operations. These functions will access both the
in-memory tree of unsynchronized information and the on-disk topology
to generate a 'merged' result.
Amoung other things this allows the filesystem to hold operations in a
memory cache without actually having to mess with the HAMMER topology
on-disk. The on-disk topology is then updated in a deferred manner.
Disk I/O is entirely avoided for self contained operations which create,
write, and delete related files quickly enough.
* Add unmount sequencing, make mount and df work again.
* Test the reference counting and flushing system on most primary
structures.
* Test basic buffer cache interactions, reading, writing, and lazy
synchronization.
* Start tying VNOPS into the infrastructure. open/close/read/write works
now via the in-memory cache (none of it is synched to the disk topology
yet!). readdir doesn't yet work... the 32 bit cookies are not large
enough.
Revision Changes Path
1.7 +62 -17 src/sbin/newfs_hammer/newfs_hammer.c
1.3 +2 -2 src/sbin/newfs_hammer/newfs_hammer.h
1.3 +3 -3 src/sbin/newfs_hammer/ondisk.c
1.7 +21 -17 src/sys/vfs/hammer/hammer.h
1.5 +21 -23 src/sys/vfs/hammer/hammer_btree.c
1.2 +10 -5 src/sys/vfs/hammer/hammer_cursor.c
1.2 +10 -6 src/sys/vfs/hammer/hammer_cursor.h
1.7 +24 -2 src/sys/vfs/hammer/hammer_disk.h
1.5 +29 -44 src/sys/vfs/hammer/hammer_inode.c
1.3 +16 -4 src/sys/vfs/hammer/hammer_io.c
1.3 +464 -44 src/sys/vfs/hammer/hammer_object.c
1.5 +62 -5 src/sys/vfs/hammer/hammer_ondisk.c
1.4 +1 -0 src/sys/vfs/hammer/hammer_subs.c
1.3 +37 -7 src/sys/vfs/hammer/hammer_transaction.c
1.5 +19 -3 src/sys/vfs/hammer/hammer_vfsops.c
1.4 +88 -51 src/sys/vfs/hammer/hammer_vnops.c
http://www.dragonflybsd.org/cvsweb/src/sbin/newfs_hammer/newfs_hammer.c.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sbin/newfs_hammer/newfs_hammer.h.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sbin/newfs_hammer/ondisk.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer.h.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_btree.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_cursor.c.diff?r1=1.1&r2=1.2&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_cursor.h.diff?r1=1.1&r2=1.2&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_disk.h.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_inode.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.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_object.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_ondisk.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_subs.c.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_transaction.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vfsops.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/hammer/hammer_vnops.c.diff?r1=1.3&r2=1.4&f=u
More information about the Commits
mailing list