From owner-cvs-src-old@FreeBSD.ORG Sun Mar 15 06:43:40 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D724D1065670 for ; Sun, 15 Mar 2009 06:43:40 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C44E28FC15 for ; Sun, 15 Mar 2009 06:43:40 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n2F6hevm055297 for ; Sun, 15 Mar 2009 06:43:40 GMT (envelope-from jeff@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n2F6hevI055296 for cvs-src-old@freebsd.org; Sun, 15 Mar 2009 06:43:40 GMT (envelope-from jeff@repoman.freebsd.org) Message-Id: <200903150643.n2F6hevI055296@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to jeff@repoman.freebsd.org using -f From: Jeff Roberson Date: Sun, 15 Mar 2009 06:41:47 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern kern_thread.c subr_lock.c src/sys/sys lock_profile.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Mar 2009 06:43:41 -0000 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