cvs commit: src/sys/conf options src/sys/kern kern_mutex.c
kern_rwlock.c kern_sx.c src/sys/sys lock.h lock_profile.h
Kip Macy
kmacy at FreeBSD.org
Tue Feb 27 06:42:05 UTC 2007
kmacy 2007-02-27 06:42:05 UTC
FreeBSD src repository
Modified files:
sys/conf options
sys/kern kern_mutex.c kern_rwlock.c kern_sx.c
sys/sys lock.h lock_profile.h
Log:
Further improvements to LOCK_PROFILING:
- Fix missing initialization in kern_rwlock.c causing bogus times to be collected
- Move updates to the lock hash to after the lock is released for spin mutexes,
sleep mutexes, and sx locks
- Add new kernel build option LOCK_PROFILE_FAST - only update lock profiling
statistics when an acquisition is contended. This reduces the overhead of
LOCK_PROFILING to increasing system time by 20%-25% which on
"make -j8 kernel-toolchain" on a dual woodcrest is unmeasurable in terms
of wall-clock time. Contrast this to enabling lock profiling without
LOCK_PROFILE_FAST and I see a 5x-6x slowdown in wall-clock time.
Revision Changes Path
1.577 +1 -0 src/sys/conf/options
1.181 +14 -3 src/sys/kern/kern_mutex.c
1.15 +2 -2 src/sys/kern/kern_rwlock.c
1.34 +20 -5 src/sys/kern/kern_sx.c
1.64 +1 -0 src/sys/sys/lock.h
1.10 +8 -1 src/sys/sys/lock_profile.h
More information about the cvs-src
mailing list