DragonFly BSD
DragonFly commits List (threaded) for 2012-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: DragonFly_RELEASE_3_0 kernel - Fix two UFS+softupdates bugs


From: Venkatesh Srinivas <vsrinivas@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 15 Aug 2012 19:24:54 -0700 (PDT)

commit e4a7dee1e26a4b4c1b7068f69d5e1453a813621c
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Wed Aug 15 18:14:27 2012 -0700

    kernel - Fix two UFS+softupdates bugs
    
    * The softdep sema_*() functions (the ones in ffs_softdep.c, not the sysv
      functions) were not MPSAFE for the case where the passed interlock is
      NULL.  Use a spinlock for that case.
    
    * getdirtybuf()'s semantics were broken and could return success even
      after having released &lk with the bp still unlocked.
    
      Fixing this should fix most of the reported softdep panics.

Summary of changes:
 sys/vfs/ufs/ffs_softdep.c |  163 ++++++++++++++++++++++++++++++---------------
 1 files changed, 108 insertions(+), 55 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e4a7dee1e26a4b4c1b7068f69d5e1453a813621c


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]