HAMMER 40A/Many: Inode/link-count sequencer.
authorMatthew Dillon <dillon@dragonflybsd.org>
Fri, 2 May 2008 01:00:42 +0000 (01:00 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Fri, 2 May 2008 01:00:42 +0000 (01:00 +0000)
commit1f07f68660b83c5d87d56552b65ddc489b520a53
tree9efd662a6b6b1079412d6fb0a01ff10bdbbef94d
parent5a96e837ea28d5721703707d0ca550a563c696f9
HAMMER 40A/Many: Inode/link-count sequencer.

* Remove the hammer_depend structure and build the dependancies directly
  into the hammer_record structure.

* Attempt to implement layout rules to ensure connectivity is maintained.
  This means, for example, that before HAMMER can flush a newly created
  file it will make sure the file has namespace connectivity to the
  directory it was created it, recursively to the root.

NOTE: 40A destabilizes the filesystem a bit, it's going to take a few
passes to get everything working properly.  There are numerous issues
with this commit.
sys/vfs/hammer/hammer.h
sys/vfs/hammer/hammer_btree.c
sys/vfs/hammer/hammer_cursor.h
sys/vfs/hammer/hammer_flusher.c
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_object.c
sys/vfs/hammer/hammer_undo.c
sys/vfs/hammer/hammer_vfsops.c
sys/vfs/hammer/hammer_vnops.c