DragonFly commits List (threaded) for 2009-07
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
DragonFly-2.3.2.55.g33b0b master sys/conf files sys/kern kern_mutex.c sys/sys mutex.h mutex2.h
commit 33b0b87c7f75846a43b41baa24ae0d170d110724
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Wed Jul 15 11:29:43 2009 -0700
MPSAFE - Add a set of general blocking/spinnable mutex functions.
These locks are intended to eventually replace lockmgr locks for most
use cases.
* Optimized based on in-line atomic_cmpset_int() calls with fallback call.
* Recursive shared and exclusive locks. Downgrading, and non-blocking
upgrading.
* Interlocked wakeup flags.
* Serial wakeup for exclusive waiters (i.e. optimal in the face of a large
number of waiting threads). Mass-wakeup for shared waiters.
* Additional entry points for spinning.
* Ref-count support, separate from lock count.
Summary of changes:
sys/conf/files | 1 +
sys/kern/kern_mutex.c | 356 +++++++++++++++++++++++++++++++++++++++++++++++++
sys/sys/mutex.h | 97 +++++++++++++
sys/sys/mutex2.h | 227 +++++++++++++++++++++++++++++++
4 files changed, 681 insertions(+), 0 deletions(-)
create mode 100644 sys/kern/kern_mutex.c
create mode 100644 sys/sys/mutex.h
create mode 100644 sys/sys/mutex2.h
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/33b0b87c7f75846a43b41baa24ae0d170d110724
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]