HAMMER VFS - REDO implementation base code part 2/many
authorMatthew Dillon <dillon@apollo.backplane.com>
Tue, 12 Jan 2010 00:09:51 +0000 (16:09 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Tue, 12 Jan 2010 00:15:58 +0000 (16:15 -0800)
commit47f363f1004a98606310718bed81606c44d57c71
tree8983c522eb73f46fbdaf5cbae28790c96938a9fe
parent3e992437422ee0a8775b10b9f0ab00fb83544c4e
HAMMER VFS - REDO implementation base code part 2/many

* Move hammer_generate_redo() to its own source file, hammer_redo.c

* Fix bug in the REDO generation.  The tail type was not set the same
  as the head type and caused recoveries to fail.

* Flesh out the REDO sequencing by adding REDO_TERM_* records during the
  meta-data flush, allowing REDO_WRITEs and REDO_TRUNCs to be matched
  against REDO_TERM_WRITEs and REDO_TERM_TRUNCs.

* Interlock the writing of the root volume in the flusher.  Frontend
  code modifies the root volume when generating REDO records and
  can collide with the flusher.
sys/conf/files
sys/vfs/hammer/Makefile
sys/vfs/hammer/hammer.h
sys/vfs/hammer/hammer_disk.h
sys/vfs/hammer/hammer_flusher.c
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_redo.c [new file with mode: 0644]
sys/vfs/hammer/hammer_undo.c
sys/vfs/hammer/hammer_vnops.c