git: HAMMER VFS - REDO implementation base code part 3/many

看板DFBSD_commit作者時間16年前 (2010/01/12 13:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 73896937a65b2ad6b84128ce92d0b0d748cb4a14 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Mon Jan 11 20:46:08 2010 -0800 HAMMER VFS - REDO implementation base code part 3/many * Track the oldest potentially uncommitted UNDO/REDO FIFO offset on an inode-by-inode basis and use a red-black tree to find the aggregate oldest offset. * If REDOs are present generate a REDO SYNC entry in the UNDO/REDO FIFO within the recovery span which indicates to the recovery code how far out of the span it must go to process REDOs. * Fix a bug in hammer_generate_redo() where the REDO would not be generated if the data length was 0 (SYNC records use a data length of 0 as a degenerate case). * Print the REDO SYNC entries on the console if bit 2 is set in vfs.hammer.debug_io (0x04). * NOTE: The recovery code does not yet process REDOs. Summary of changes: sys/vfs/hammer/hammer.h | 21 +++++++++ sys/vfs/hammer/hammer_inode.c | 19 ++++++++- sys/vfs/hammer/hammer_redo.c | 95 +++++++++++++++++++++++++++++++++++++--- sys/vfs/hammer/hammer_vfsops.c | 1 + 4 files changed, 128 insertions(+), 8 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/73896937a65b2ad6b84128ce92d0b0d748cb4a14 -- DragonFly BSD source repository
文章代碼(AID): #1BJ08MHU (DFBSD_commit)