DragonFly commits List (threaded) for 2011-04
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: HAMMER VFS - Fix degenerate stall condition in flusher during unmount
commit e86903d84f840af38d1b452a6a6c624702373751
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Mon Apr 11 10:07:37 2011 -0700
HAMMER VFS - Fix degenerate stall condition in flusher during unmount
* Fix a case where the flusher can stall during an unmount.
* Rework the flusher sequence numbers to always allocate a sequence number
when a flush is requested, remove the flusher.act field, and rejigger the
code a bit.
* This also cleans up an edge case when a full sync is inserted (when taking
snapshots, filesystem sync, etc), by inserting several sequence numbers to
completely flush the UNDO/REDO FIFO before moving on to the next active
flush group.
Reported-by: Sepherosa Ziehau <sepherosa@gmail.com>, Francois Tigeot <ftigeot@wolfpond.org>, numerous others.
Summary of changes:
sys/vfs/hammer/hammer.h | 3 +-
sys/vfs/hammer/hammer_flusher.c | 115 +++++++++++++++++++++----------------
sys/vfs/hammer/hammer_mirror.c | 2 +-
sys/vfs/hammer/hammer_pfs.c | 2 +-
sys/vfs/hammer/hammer_prune.c | 2 +-
sys/vfs/hammer/hammer_rebalance.c | 2 +-
sys/vfs/hammer/hammer_reblock.c | 2 +-
7 files changed, 71 insertions(+), 57 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e86903d84f840af38d1b452a6a6c624702373751
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]