DragonFly commits List (threaded) for 2009-05
DragonFly-184.108.40.2064.g3214a master sys/vfs/hammer hammer.h hammer_blockmap.c hammer_btree.c hammer_cursor.h hammer_inode.c hammer_io.c hammer_object.c
Author: Matthew Dillon <firstname.lastname@example.org>
Date: Wed May 6 13:38:22 2009 -0700
HAMMER VFS - Refactor merged search function to try to avoid missed entries
Refactor the merged B-Tree + In-Memory search function to try to avoid races
where an in-memory record is flushed to the media during a search, causing
the search to miss the record.
Add another flag to hammer_record_t to indicate that the record was deleted
because it was committed to the media (verses simply being deleted).
Better-separate HAMMER_RECF_DELETED_FE and HAMMER_RECF_DELETED_BE. These
flags indicate whether the frontend or backend deleted an in-memory record.
The backend ignores frontend deletions that occur after the record has been
associated with a flush group.
Remove some console Warnings that are no longer applicable.
Summary of changes:
sys/vfs/hammer/hammer.h | 3 +-
sys/vfs/hammer/hammer_blockmap.c | 13 --
sys/vfs/hammer/hammer_btree.c | 26 ++-
sys/vfs/hammer/hammer_cursor.h | 2 +
sys/vfs/hammer/hammer_inode.c | 70 +++++--
sys/vfs/hammer/hammer_io.c | 3 +-
sys/vfs/hammer/hammer_object.c | 439 ++++++++++++++++++++++++++------------
7 files changed, 381 insertions(+), 175 deletions(-)
DragonFly BSD source repository