freebsd-dev/sys/sys
Jason Evans 0cde2e34af Move most of sys/mutex.h into kern/kern_mutex.c, thereby making the mutex
inline functions non-inlined.  Hide parts of the mutex implementation that
should not be exposed.

Make sure that WITNESS code is not executed during boot until the mutexes
are fully initialized by SI_SUB_MUTEX (the original motivation for this
commit).

Submitted by:	peter
2001-01-21 22:34:43 +00:00
..
_posix.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
_sigset.h Provide a new interface for the user of aio_read() and aio_write() to request 2000-11-21 19:36:36 +00:00
aac_ioctl.h Major bugfix and minor update. This should resolve the current issues 2000-12-27 13:14:56 +00:00
acct.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
acl.h o Correct typos in comment fields. 2001-01-07 19:21:06 +00:00
agpio.h A driver for programming the AGP hardware. This is only very lightly 2000-06-09 16:04:30 +00:00
aio.h Undo rev 1.8: This commit actually added a second declaration 2000-11-25 19:35:49 +00:00
assym.h Use "nm | awk ..." instead of genassym(1) to generate symbol value headers. 2000-06-02 09:27:48 +00:00
bio.h A bit of sanity-checking in bioqdisksort(): panic if we recurse. 2001-01-14 18:48:42 +00:00
bitstring.h Cleanup of bitstring.h: 2000-10-09 12:34:51 +00:00
blist.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
buf.h Use PCPU_GET, PCPU_PTR and PCPU_SET to access all per-cpu variables 2001-01-10 04:43:51 +00:00
bus_dma.h Axe the barrier_{read,write,rw}() helper functions as this method of 2000-10-20 06:45:48 +00:00
bus_private.h Implement a trivial but effective interface for obtaining the kernel's 2000-11-09 10:21:23 +00:00
bus.h Alter the return value and arguments of the GET_RESOURCE_LIST bus method. 2000-11-28 06:49:15 +00:00
callout.h Revert the last commit to the callout interface, and add a flag to 2000-11-25 06:22:16 +00:00
capability.h o Simplify capability types away from an array of ints to a single 2000-10-13 17:12:58 +00:00
ccdvar.h Cleanup some remaining bdev fluff. 2000-01-16 09:25:10 +00:00
cdefs.h Use __alias__ instead of alias in the definition of __strong_reference(). 2000-03-18 22:26:54 +00:00
cdio.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
cdrio.h Add session argument to *CLOSEDISK, allowing to set session type on fixate. 2001-01-10 19:17:38 +00:00
chio.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
clist.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
condvar.h Implement condition variables. 2001-01-16 01:00:43 +00:00
conf.h Deprecate devsw->d_bmaj entirely. 2000-10-31 10:58:14 +00:00
cons.h Add a new mechanism, cndbctl(), to tell the console driver that 2000-01-11 14:54:01 +00:00
consio.h Supported EGC 640x400, PEGC 640x400 and PEGC 640x480 graphics modes. 2000-04-27 13:34:32 +00:00
copyright.h We are now in the year 2001, so ajust copyrights. 2001-01-01 08:05:48 +00:00
ctype.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
dataacq.h Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
device_port.h Add PC-Card/ISA SCSI host adpater drivers from NetBSD/pc98 2000-10-23 12:55:51 +00:00
devicestat.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
dir.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
dirent.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
disk.h Add disk_enumerate() for finding names of disks. Vinum and libh will 2000-06-15 20:30:53 +00:00
disklabel.h Use ANSI prototype and function definition for dkcksum so that this 2001-01-14 05:14:37 +00:00
diskmbr.h Use ANSI prototype and function definition for dkcksum so that this 2001-01-14 05:14:37 +00:00
diskpc98.h Use ANSI prototype and function definition for dkcksum so that this 2001-01-14 05:14:37 +00:00
diskslice.h Write support for the cd(4) driver. 2000-10-30 07:03:00 +00:00
dkstat.h Redeclare cp_time. It's no longer static, and linprocfs needs it. 2000-09-07 16:38:04 +00:00
dmap.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
domain.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
dvdio.h Add support for the DVD ioctl interface. 2000-05-12 03:36:02 +00:00
elf32.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
elf64.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
elf_common.h Update the e_machine values to include x86-64, PowerPC and [Strong]ARM; 2001-01-01 21:56:57 +00:00
elf_generic.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
errno.h Add ENOTSUP, which is specified as an error return value for various 2000-05-02 06:02:11 +00:00
event.h Simplify kqueue API slightly. 2000-07-18 19:31:52 +00:00
eventhandler.h - Convert the per-eventhandler list mutex to a lockmgr lock so that it can 2000-12-12 04:01:35 +00:00
eventvar.h Simplify kqueue API slightly. 2000-07-18 19:31:52 +00:00
exec.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
extattr.h Fix bde'isms in acl/extattr syscall interface, renaming syscalls to 2000-01-19 06:07:34 +00:00
fbio.h Supported EGC 640x400, PEGC 640x400 and PEGC 640x480 graphics modes. 2000-04-27 13:34:32 +00:00
fcntl.h Implement POSIX.1b shared memory objects. In this implementation, 2000-04-22 15:22:31 +00:00
fdcio.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
file.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
filedesc.h This patchset fixes a large number of file descriptor race conditions. 2000-11-18 21:01:04 +00:00
filio.h Commit the kernel part of our DVD support. Nothing much to say really, 1999-12-07 22:25:28 +00:00
gmon.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
imgact_aout.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
imgact_elf.h Change Elf64_Brandinfo::brand from char* to int. 2000-04-28 08:53:23 +00:00
imgact.h Make size of dynamic loader argument variable to support 2000-09-26 05:09:21 +00:00
inflate.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
interrupt.h - Overhaul the software interrupt code to use interrupt threads for each 2000-10-25 05:19:40 +00:00
inttypes.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ioccom.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ioctl_bt848.h Fix typo in comments 2000-10-31 14:30:29 +00:00
ioctl_compat.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ioctl_meteor.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ioctl.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
ipc.h sysvipc loadable. 2000-12-01 08:57:47 +00:00
ipl.h Remove unused declarations for spending and sdelayed, and remove unused 2000-12-08 10:39:00 +00:00
jail.h o Deny access to System V IPC from within jail by default, as in the 2000-10-31 01:34:00 +00:00
joystick.h Switch over to using the generic joy driver 1999-12-05 20:02:19 +00:00
kbio.h Add the ability to define a "shutdown" and "shutdown and poweroff" key 2000-09-11 20:37:42 +00:00
kernel.h Remove MUTEX_DECLARE() and MTX_COLD. Instead, postpone full mutex 2001-01-21 07:52:20 +00:00
kobj.h Add kobj_class_compile_static() to allow classes to be initialised 2000-08-28 21:11:12 +00:00
kthread.h Stick the kthread API in a kthread_* namespace, and the specialized kproc 2000-12-15 20:08:20 +00:00
ktr.h - Remove much of the inlining of the KTR tracepoints into a ktr_tracepoint() 2000-11-07 01:49:48 +00:00
ktrace.h Limit size of passed in data for utrace function. 2001-01-06 09:34:20 +00:00
libkern.h revert addition of strlcpy/strlcat 2000-12-18 13:28:12 +00:00
linedisc.h Deprecate devsw->d_bmaj entirely. 2000-10-31 10:58:14 +00:00
link_aout.h Update the prototype for "r_brk" to correspond with the change in 2000-09-18 20:40:32 +00:00
link_elf.h Update the prototype for "r_brk" to correspond with the change in 2000-09-18 20:40:32 +00:00
linker_set.h Change ".align 3" to ".p2align 3" so that this works with ia64. 2000-09-29 13:35:57 +00:00
linker.h Correct a warning where the r_debug_state() dummy function used to trigger 2000-10-06 05:20:02 +00:00
lock.h Add an assertion macro for lockmgr locks, LOCKMGR_ASSERT(lkp, what, p). 2000-12-18 05:50:31 +00:00
lockf.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
lockmgr.h Add an assertion macro for lockmgr locks, LOCKMGR_ASSERT(lkp, what, p). 2000-12-18 05:50:31 +00:00
malloc.h Introduce the M_ZERO flag to malloc(9) 2000-10-20 17:54:55 +00:00
mbuf.h When short of mbufs or mbuf clusters, we sleep on appropriate "counters." 2001-01-20 21:29:10 +00:00
md5.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
mdioctl.h Add padding space and a version number to the md_ioctl structre for future 2001-01-01 23:08:26 +00:00
memrange.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
mman.h Add MAP_NOCORE to mmap(2), and MADV_NOCORE and MADV_CORE to madvise(2). 2000-02-28 04:10:35 +00:00
module.h First round implementation of a fine grain enhanced module to module 2000-04-29 13:19:31 +00:00
mount.h remove struct mount from useland visibility 2000-12-04 09:21:05 +00:00
mouse.h Initiate deorbit burn sequence for <machine/mouse.h>. 2000-10-09 08:08:36 +00:00
msg.h Move the MSG* and SEM* options to opt_sysvipc.h 2000-05-01 13:33:56 +00:00
msgbuf.h Replace logwakeup() with "int msgbuftrigger". There is little 2000-12-20 21:50:37 +00:00
mtio.h Make residuals signed. 2001-01-21 01:34:14 +00:00
mutex.h Move most of sys/mutex.h into kern/kern_mutex.c, thereby making the mutex 2001-01-21 22:34:43 +00:00
namei.h Add new flag PDIRUNLOCK to the component.cn_flags which should be set by 2000-09-17 07:26:42 +00:00
nlist_aout.h
param.h Bump __FreeBSD_version for libgcc/linking changes. 2001-01-10 17:41:49 +00:00
pciio.h [ repository copy of sys/pci/pci_ioctl.h to sys/sys/pciio.h happened in the 1999-12-08 17:44:04 +00:00
pioctl.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
pipe.h select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
poll.h Synchronize the poll() prototype with the one provided in the 2000-08-21 12:25:09 +00:00
posix4.h Fixed some type mismatches. p_retval[0] in struct proc has type 1999-12-27 10:22:09 +00:00
proc.h Make intr_nesting_level per-process, rather than per-cpu. Setup 2001-01-21 19:25:07 +00:00
procfs.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
protosw.h backout previous change for now 2000-08-16 13:59:50 +00:00
ptio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ptrace.h - Move the prototype for proc_reparent from sys/ptrace.h to sys/proc.h 2000-10-19 18:55:22 +00:00
queue.h CIRCLEQs are a disgrace to everything Knuth taught us in Volume 1 Chapter 2. 2000-12-29 09:55:40 +00:00
random.h Add a constant for the (to be committed at a later time) irq-entropy 2000-11-25 16:51:16 +00:00
reboot.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
resource.h Change the scheduler to actually respect the PUSER barrier. It's been 2000-04-30 18:33:43 +00:00
resourcevar.h use a oppurtunistic locking strategy with the uidinfo structures to avoid 2000-11-30 19:15:22 +00:00
rman.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 20:46:02 +00:00
rtprio.h Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
sbuf.h String buffer API 2000-12-13 19:51:07 +00:00
select.h Do not recursively include <sys/selinfo.h> from <sys/select.h>; all in-tree 2001-01-20 03:11:47 +00:00
selinfo.h Move `struct selinfo' and related functions to <sys/selinfo.h>. 2001-01-04 03:29:16 +00:00
sem.h Move the MSG* and SEM* options to opt_sysvipc.h 2000-05-01 13:33:56 +00:00
semaphore.h Track libc_r addition of semaphores implementation. 2000-01-20 07:55:42 +00:00
shm.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
signal.h Provide a new interface for the user of aio_read() and aio_write() to request 2000-11-21 19:36:36 +00:00
signalvar.h Declare sigexit() as non-returning. 2000-09-17 15:23:10 +00:00
smp.h Move io_apic_{read,write} from apic_ipl.s (where they do not belong) into 2000-12-06 01:04:02 +00:00
snoop.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
socket.h remove pfctlinput 2000-12-19 08:09:36 +00:00
socketvar.h select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
sockio.h sync with kame tree as of july00. tons of bug fixes/improvements. 2000-07-04 16:35:15 +00:00
soundcard.h add 32bit formats and a couple of ioctls 2000-09-01 17:38:32 +00:00
stat.h Get userland visible flags added for snapshots to give a few days 2000-07-04 04:58:34 +00:00
syscall-hide.h Regen. 2000-12-02 05:45:32 +00:00
syscall.h Regen. 2000-12-02 05:45:32 +00:00
syscall.mk Regen. 2000-12-02 05:45:32 +00:00
sysctl.h - For dynamic sysctl's added at runtime, don't assume that the name passed 2001-01-05 07:00:45 +00:00
sysent.h sysvipc loadable. 2000-12-01 08:57:47 +00:00
syslimits.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
syslog.h Add the "LOG_CONSOLE" facility and tell syslogd to not log it on 2000-11-25 21:00:58 +00:00
sysproto.h Regen. 2000-12-02 05:45:32 +00:00
systm.h Remove unused splsoftcambio(), splsoftcamnet(), splq() and splz() inlines. 2001-01-19 10:46:58 +00:00
taskqueue.h taskqueue_swi is a pointer, not a struct. Fix a comment that misleadingly 2000-06-09 22:32:36 +00:00
termios.h Kernel support for erase2 character. 2000-11-28 20:03:23 +00:00
time.h Isolate the Timecounter internals in their own two files. 2000-03-20 14:09:06 +00:00
timeb.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
timepps.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
timers.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
times.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
timetc.h Isolate the Timecounter internals in their own two files. 2000-03-20 14:09:06 +00:00
timex.h Update the NTP kernel PLL code to the 2000-08-29 version of Dave Mills 2000-09-04 08:19:32 +00:00
tty.h select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
ttychars.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
ttycom.h Remove the TABLDISC line discipline number, it's not in the tree 2000-01-29 16:47:35 +00:00
ttydefaults.h Kernel support for erase2 character. 2000-11-28 20:03:23 +00:00
ttydev.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
types.h Convert all users of fldoff() to offsetof(). fldoff() is bad 2000-10-27 11:45:49 +00:00
ucontext.h Add a per-signal flag to mark handlers registered with osigaction, so we 1999-10-11 20:33:17 +00:00
ucred.h make crfree into a function rather than a macro to avoid bloat because of 2000-11-30 19:09:48 +00:00
uio.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
un.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
unistd.h Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
unpcb.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
user.h The size of kinfo_proc on an alpha is 904 (not 640). 2001-01-14 18:21:19 +00:00
utsname.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
vmmeter.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
vnioctl.h Fix a bug in the block number calculation for VN disks with a sector 1999-09-17 05:34:00 +00:00
vnode.h select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
wait.h Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" 1999-12-29 04:46:21 +00:00
xrpuio.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00