Date: Sun, 15 Mar 2009 06:41:47 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/kern kern_thread.c subr_lock.c src/sys/sys lock_profile.h Message-ID: <200903150643.n2F6hevI055296@repoman.freebsd.org>
index | next in thread | raw e-mail
jeff 2009-03-15 06:41:47 UTC
FreeBSD src repository
Modified files:
sys/kern kern_thread.c subr_lock.c
sys/sys lock_profile.h
Log:
SVN rev 189845 on 2009-03-15 06:41:47Z by jeff
- Implement a new mechanism for resetting lock profiling. We now
guarantee that all cpus have acknowledged the cleared enable int by
scheduling the resetting thread on each cpu in succession. Since all
lock profiling happens within a critical section this guarantees that
all cpus have left lock profiling before we clear the datastructures.
- Assert that the per-thread queue of locks lock profiling is aware of
is clear on thread exit. There were several cases where this was not
true that slows lock profiling and leaks information.
- Remove all objects from all lists before clearing any per-cpu
information in reset. Lock profiling objects can migrate between
per-cpu caches and previously these migrated objects could be zero'd
before they'd been removed
Discussed with: attilio
Sponsored by: Nokia
Revision Changes Path
1.283 +3 -0 src/sys/kern/kern_thread.c
1.25 +101 -9 src/sys/kern/subr_lock.c
1.19 +7 -16 src/sys/sys/lock_profile.h
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903150643.n2F6hevI055296>
