HAMMER 40A/Many: Inode/link-count sequencer.
commit1be59cecb688b28e9e44973bd11e3690acc94fc7
authorMatthew Dillon <dillon@dragonflybsd.org>
Fri, 2 May 2008 01:00:42 +0000 (2 01:00 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Fri, 2 May 2008 01:00:42 +0000 (2 01:00 +0000)
treeeba23ae19ad286cc5bbca257bfbc3a3312864144
parent6962534890a1fc3dca3ead78a646697db7dab046
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