git: HAMMER VFS - REDO implementation base code part 2/many
Matthew Dillon
dillon at crater.dragonflybsd.org
Mon Jan 11 20:58:43 PST 2010
commit 47f363f1004a98606310718bed81606c44d57c71
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Mon Jan 11 16:09:51 2010 -0800
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.
Summary of changes:
sys/conf/files | 1 +
sys/vfs/hammer/Makefile | 1 +
sys/vfs/hammer/hammer.h | 19 +++-
sys/vfs/hammer/hammer_disk.h | 48 +++++++-
sys/vfs/hammer/hammer_flusher.c | 14 ++
sys/vfs/hammer/hammer_inode.c | 49 ++++++-
sys/vfs/hammer/hammer_redo.c | 270 +++++++++++++++++++++++++++++++++++++++
sys/vfs/hammer/hammer_undo.c | 220 ++-----------------------------
sys/vfs/hammer/hammer_vnops.c | 94 ++++++++++----
9 files changed, 476 insertions(+), 240 deletions(-)
create mode 100644 sys/vfs/hammer/hammer_redo.c
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/47f363f1004a98606310718bed81606c44d57c71
--
DragonFly BSD source repository
More information about the Commits
mailing list