HAMMER part 2/many.
authorMatthew Dillon <dillon@dragonflybsd.org>
Wed, 7 Nov 2007 00:43:24 +0000 (00:43 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Wed, 7 Nov 2007 00:43:24 +0000 (00:43 +0000)
commit66325755d594eb864f71814b12062aa154b5a2c4
treed03ab90e83c790d1fb754f8c0d71d655eaab3a86
parent66931b327cdabeb5dfdb457381b000da54bb1e57
HAMMER part 2/many.

* Implement most of the I/O infrastructure and internal HAMMER tracking
  structures for volumes, super-clusters, clusters, and buffers.

* Flesh out the B-Tree code and add an iterator.

* Implement a good chunk of the vnops, but no modifying operations yet.

* Implement passive filesystem buffer tracking which allows a struct buf
  to remain associated with internal HAMMER data structures and also
  provides a reverse path whereby the filesystem buffer cache drives
  garbage collection of internal HAMMER data structures.  Use the augmented
  bio_ops to facilitate this.

* Skeleton for transactions, spikes, and object allocation & management.
16 files changed:
sys/conf/files
sys/vfs/hammer/Makefile
sys/vfs/hammer/hammer.h
sys/vfs/hammer/hammer.txt
sys/vfs/hammer/hammer_btree.c
sys/vfs/hammer/hammer_btree.h
sys/vfs/hammer/hammer_disk.h
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_io.c [new file with mode: 0644]
sys/vfs/hammer/hammer_object.c [copied from sys/vfs/hammer/hammer_subs.c with 63% similarity]
sys/vfs/hammer/hammer_ondisk.c
sys/vfs/hammer/hammer_spike.c [copied from sys/vfs/hammer/hammer_subs.c with 74% similarity]
sys/vfs/hammer/hammer_subs.c
sys/vfs/hammer/hammer_transaction.c [copied from sys/vfs/hammer/hammer_subs.c with 75% similarity]
sys/vfs/hammer/hammer_vfsops.c
sys/vfs/hammer/hammer_vnops.c