DragonFly commits List (threaded) for 2012-04
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: kernel -- ffs: Soft updates locking fixes
commit 799ea500fc9a83af3435056a7fbc0a1aafb6bfc4
Author: Venkatesh Srinivas <me@endeavour.zapto.org>
Date: Sat Apr 21 20:05:06 2012 -0700
kernel -- ffs: Soft updates locking fixes
1) Do not take mplock in bioops callbacks; the lock was no longer synchronizing
against mainline code.
2) Do not hold softdep lock around bwillinode()
3) Take softdep lock in softdep_process_worklist bioops callback. This callback
was previously using the mplock for synchronization (insufficiently!)
4) Modify process_worklist_item to expect the softdep lock to be held on
entry and release it at appropriate times.
Prevents a panic seen when running fsstress on a UFS+softdep fs, where fsync
finds a null buffer on vnode trees. This arose from a front-end/back-end
race in softdep_process_worklist.
Summary of changes:
sys/vfs/ufs/ffs_softdep.c | 33 +++++++++------------------------
1 files changed, 9 insertions(+), 24 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/799ea500fc9a83af3435056a7fbc0a1aafb6bfc4
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]