freebsd-dev/sys
Dag-Erling Smørgrav 6c35e80948 Mutex profiling code, conditional on the MUTEX_PROFILING option. Adds the
following sysctl variables:

  debug.mutex.prof.enable	    enable / disable profiling
  debug.mutex.prof.acquisitions	    number of mutex acquisitions recorded
  debug.mutex.prof.records	    number of acquisition points recorded
  debug.mutex.prof.maxrecords	    max number of acquisition points
  debug.mutex.prof.rejected	    number of rejections (due to full table)
  debug.mutex.prof.hashsize	    hash size
  debug.mutex.prof.collisions	    number of hash collisions
  debug.mutex.prof.stats	    profiling statistics

The code records four numbers for each acquisition point (identified by
source file name and line number): longest time held, total time held,
number of non-recursive acquisitions, average time held.  The measurements
are in clock cycles (as returned by get_cyclecount(9)); this may cause
measurements on some SMP systems to be unreliable.  This can probably be
worked around by replacing get_cyclecount(9) by some incarnation of
nanotime(9).

This work was derived from initial patches by eivind.
2002-04-02 00:01:49 +00:00
..
alpha Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
amd64 Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
arm Guard against redefining __gnuc_va_list. 2002-03-24 11:25:46 +00:00
boot Add support for booting from CD-ROM. Make it possible to enable UFS 2002-04-01 23:28:35 +00:00
cam Fix 3 of the four problems with my last indentation fix. ("fixing" the 2002-04-01 05:41:33 +00:00
coda Remove __P. 2002-03-20 05:00:21 +00:00
compat Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
conf Mutex profiling code, conditional on the MUTEX_PROFILING option. Adds the 2002-04-02 00:01:49 +00:00
contrib We don't need ip_ipsec_pxy.c in userland. 2002-03-26 13:42:09 +00:00
crypto Remove __P. 2002-03-20 05:14:42 +00:00
ddb Fixed some style bugs in the removal of __P(()). Continuation lines 2002-03-23 11:53:03 +00:00
dev MFNetBSD: 2002-04-01 22:03:37 +00:00
fs Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
geom Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
gnu Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
i4b Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
i386 Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
ia64 Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
isa Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
isofs/cd9660 Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
kern Mutex profiling code, conditional on the MUTEX_PROFILING option. Adds the 2002-04-02 00:01:49 +00:00
libkern Remove 'register' keyword. 2002-03-21 18:49:23 +00:00
modules Fix kernel build. 2002-03-25 08:02:54 +00:00
net Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netatalk Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netatm Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netgraph Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netinet Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netinet6 Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netipx Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netkey Remove __P. 2002-03-20 02:39:27 +00:00
netnatm Remove __P. 2002-03-20 02:39:27 +00:00
netncp Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
netns Remove __P. 2002-03-20 02:39:27 +00:00
netsmb Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
nfs Remove unused include. 2002-03-20 10:12:07 +00:00
nfsclient Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
nfsserver Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
pc98 Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
pccard Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
pci smbus_alloc_bus is not part of the smbus interface anymore 2002-03-23 18:27:16 +00:00
posix4 Remove __P. 2002-03-19 22:20:14 +00:00
powerpc Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
rpc
security/lomac Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sparc64 Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
svr4
sys Mutex profiling code, conditional on the MUTEX_PROFILING option. Adds the 2002-04-02 00:01:49 +00:00
tools constify 2002-04-01 19:22:04 +00:00
ufs Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
vm Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
Makefile