DragonFly commits List (threaded) for 2006-06
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
cvs commit: src/sys/kern kern_spinlock.c lwkt_thread.c usched_bsd4.c src/sys/sys globaldata.h spinlock2.h
dillon 2006/06/01 12:02:39 PDT
DragonFly src repository
Modified files:
sys/kern kern_spinlock.c lwkt_thread.c
usched_bsd4.c
sys/sys globaldata.h spinlock2.h
Log:
Since we can only hold one shared spinlock at a time anyway, change the
gd_spinlocks_rd counter into a gd_spinlock_rd pointer. This will improve
performance for potentially contested exclusive spinlocks. Now they can
test the per-cpu spinlock pointer directly against the spinlock being
acquired instead of testing a counter which might represent any shared
spinlock.
This also has the effect of relaxing the requirement that further
exclusive spinlocks cannot be acquired while holding a shared spinlock,
but for now we are going to leave the requirement intact.
Revision Changes Path
1.7 +7 -7 src/sys/kern/kern_spinlock.c
1.100 +4 -4 src/sys/kern/lwkt_thread.c
1.12 +2 -2 src/sys/kern/usched_bsd4.c
1.44 +2 -1 src/sys/sys/globaldata.h
1.11 +12 -8 src/sys/sys/spinlock2.h
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_spinlock.c.diff?r1=1.6&r2=1.7&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_thread.c.diff?r1=1.99&r2=1.100&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/usched_bsd4.c.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/globaldata.h.diff?r1=1.43&r2=1.44&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/spinlock2.h.diff?r1=1.10&r2=1.11&f=u
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]