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

git: dsched_fq - Overhaul locking


From: Alex Hornung <alexh@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 17 Apr 2010 03:56:23 -0700 (PDT)

commit aedbaf3ba5edf2f3c33496c3c542c8333943bca7
Author: Alex Hornung <ahornung@gmail.com>
Date:   Sat Apr 17 09:51:27 2010 +0000

    dsched_fq - Overhaul locking
    
    * use lockmgr lock for FQP lock, as some strategy ops can sleep while
      acquiring another lock (CAM SIM lock, for example).
    
    * reduce overall locking when it isn't really required, mainly during
      deallocation (losing last ref) of objects. The locking is only
      explicitly required to protect the internal TAILQs.
    
    * NOTE: this is an _attempt_ to fix some unidentified deadlocks that have
      been reported occasionally. While it shouldn't happen, be aware that
      this might explode.
    
    Reported-by: Antonio Huete, Jan Lentfer

Summary of changes:
 sys/dsched/fq/dsched_fq.h      |   22 ++++++++++++++--------
 sys/dsched/fq/dsched_fq_core.c |   17 ++++-------------
 2 files changed, 18 insertions(+), 21 deletions(-)

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


-- 
DragonFly BSD source repository



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