freebsd-dev/sys/sys
Jeff Roberson 6cb8bf2027 - Lock down the syncer with sync_mtx.
- Enable vfs_badlock_mutex by default.
 - Assert that the vp is locked in VOP_UNLOCK.
 - Use standard interlock macros in remaining code.
 - Correct a race in getnewvnode().
 - Lock access to v_numoutput with interlock.
 - Lock access to buf lists and splay tree with interlock.
 - Add VOP and VI asserts.
 - Lock b_vnbufs with the vnode interlock.
 - Add vrefcnt() for callers who want to retreive the vnode ref without
   holding a lock.  Add a comment that describes when this is safe.
 - Add vholdl() and vdropl() so that callers who already own the interlock
   can avoid race conditions and unnecessary unlocking.
 - Move the VOP_GETATTR() in vflush() into the WRITECLOSE conditional case.
 - Hold the interlock before droping the mntlist_mtx in vflush() to avoid
   a race.
 - Fix locking in vfs_msync().
2002-09-25 02:22:21 +00:00
..
_label.h Define 'struct label' in _label.h rather than mac.h, which will permit 2002-08-13 15:54:28 +00:00
_lock.h Renamed the idempotency identifier to match the file name. 2002-06-07 14:37:09 +00:00
_mutex.h Add mtx_ prefixes to the fields used for mutex profiling, and fix a bug 2002-07-03 01:50:27 +00:00
_posix.h Claim to be 1003.1-2001. We're not quite, yet, but that's a more useful 2002-09-21 02:19:03 +00:00
_semaphore.h Add the rest of the kernel support for the sem_ API in kern/uipc_sem.c. 2002-09-19 00:43:32 +00:00
_sigset.h Quick fix for the type of the bitmap in sigset_t. It was an array of 2002-06-20 09:04:33 +00:00
_timespec.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
_types.h Move definition of nl_item type to <sys/_types.h>, so that it can be 2002-09-18 05:51:23 +00:00
aac_ioctl.h Bring the aac driver *much* closer to style(9). 2001-09-05 20:43:02 +00:00
acct.h Remove __P 2002-03-19 20:18:42 +00:00
acl.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
agpio.h Fix an off-by-bit error in the AGP_MODE_[GS]ET_RATE() macros. 2001-11-21 08:40:23 +00:00
aio.h o Add missing synchronization (splnet()/splx()) in aio_free_entry(). 2002-01-06 21:03:39 +00:00
alq.h - Correct the name in the header guards. 2002-09-23 00:29:31 +00:00
assym.h
ata.h Cleanup, use the same method to denote parts for endianess. 2002-04-05 18:03:33 +00:00
bio.h Make FreeBSD "struct disklabel" agnostic, step 312 of 723: 2002-09-20 14:14:37 +00:00
bitstring.h
blist.h Move the hideously misnamed type "u_daddr_t" to <sys/blist.h> where it 2002-05-18 09:38:20 +00:00
buf.h Change hw.physmem and hw.usermem to unsigned long like they used to be 2002-08-30 04:04:37 +00:00
bus_dma.h - Moved the bus_dma declarations from bus_{at386,pc98}.h into bus_dma.h. 2001-10-06 16:27:21 +00:00
bus_private.h Style(9) 2001-09-05 01:06:28 +00:00
bus.h Add additional information returned to userland by the device querying 2002-09-14 19:15:12 +00:00
callout.h Remove __P 2002-03-19 20:18:42 +00:00
ccdvar.h Fix some signed/unsigned integer confusion, and add bounds checking of 2001-09-10 11:28:07 +00:00
cdefs.h Alfred got me thinking. Provide stubs for lint, and let the compilers 2002-09-23 06:37:48 +00:00
cdio.h Add endianess kludge code, so that bitfields work on the sparc64 as well. 2002-04-05 13:10:26 +00:00
cdrio.h Add DVD+RW support to the ATA driver and burncd. This also closes 2002-08-08 07:59:24 +00:00
chio.h
clist.h
clock.h Add a generic implementation of inittodr() and resettodr(), as well as 2002-04-04 23:39:10 +00:00
condvar.h Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
conf.h Used protected names (_foo) for parameter names. This helps clean up 2002-04-21 10:57:43 +00:00
cons.h Remove __P 2002-03-19 20:18:42 +00:00
consio.h 1. Allow information about current history size be retrieved using ioctl(2); 2002-08-19 16:32:09 +00:00
copyright.h Welcome 2002. Happy new year. 2002-01-01 09:20:52 +00:00
ctype.h
dataacq.h
device_port.h
devicestat.h Un-inline the non-trivial "trivial" bio* functions. 2002-09-14 19:34:11 +00:00
digiio.h Add DIGIIO_SETALTPIN and DIGIIO_GETALTPIN ioctl values 2001-06-20 14:51:58 +00:00
dir.h
dirent.h Fix namespace issues by using the relatively new visibility 2002-09-10 18:12:16 +00:00
disk.h (This commit touches about 15 disk device drivers in a very consistent 2002-09-20 19:36:05 +00:00
disklabel.h Make FreeBSD "struct disklabel" agnostic, step 312 of 723: 2002-09-20 14:14:37 +00:00
diskmbr.h Make FreeBSD "struct disklabel" agnostic, step 312 of 723: 2002-09-20 14:14:37 +00:00
diskpc98.h Make FreeBSD "struct disklabel" agnostic, step 312 of 723: 2002-09-20 14:14:37 +00:00
diskslice.h Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 08:46:52 +00:00
dkstat.h
dmap.h
domain.h Remove __P 2002-03-19 20:18:42 +00:00
dvdio.h Update header. 2002-03-04 21:08:35 +00:00
elf32.h Move the definition of ElfN_Hashelt to common headers. The only platform 2002-05-30 08:32:18 +00:00
elf64.h Move the definition of ElfN_Hashelt to common headers. The only platform 2002-05-30 08:32:18 +00:00
elf_common.h - Call a SHT_REL 'relocation section' rather than 2002-08-11 21:07:50 +00:00
elf_generic.h Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable 2002-07-20 02:56:12 +00:00
endian.h Make this header self-reliant with regard to the types it uses. 2002-04-29 16:58:54 +00:00
errno.h s/EDOFUS/EDOOFUS/ 2002-08-21 17:11:00 +00:00
event.h Updated a comment. Namspace pollution in <sys/select.h> is now moot since 2002-06-29 19:14:52 +00:00
eventhandler.h Convert macros with variadic arguments from GNU format to ISO 9X. 2002-07-15 17:15:41 +00:00
eventvar.h
exec.h Remove __P 2002-03-19 20:18:42 +00:00
extattr.h Introduce new extattr_check_cred() function which implements the canonical 2002-09-05 20:38:57 +00:00
fbio.h Turn on TGA support. 2002-04-13 22:34:16 +00:00
fcntl.h o Add typedefs for mode_t, off_t, pid_t rather than including 2002-09-17 22:22:50 +00:00
fdcio.h Long promised major enhancement set for the floppy disk driver: 2001-12-15 19:09:04 +00:00
file.h Include <sys/types.h> directly rather than depending on <sys/fcntl.h> 2002-09-17 05:14:09 +00:00
filedesc.h ISOfy and minor warnsfix. 2002-07-15 13:08:44 +00:00
filio.h
fnv_hash.h Use the same API as the example code. 2001-03-20 02:10:18 +00:00
gmon.h Reserved one of the spare fields in struct gmon to record the history 2002-02-21 05:52:49 +00:00
gpt.h Don't use an incomplete array type to mark the start of the padding 2002-05-31 01:07:13 +00:00
iconv.h Convert GNU variadic macros to the ISO 9X variety. 2002-07-15 13:34:50 +00:00
imgact_aout.h Forward declare struct vnode so that <sys/vnode.h> or some other header 2002-09-05 07:54:03 +00:00
imgact_elf.h Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable 2002-07-20 02:56:12 +00:00
imgact.h Use the fields in the sysentvec and in the vm map header in place of the 2002-09-21 22:07:17 +00:00
inflate.h Forgot one more instance of my old email address. 2002-03-26 08:29:40 +00:00
interrupt.h Remove __P 2002-03-19 20:18:42 +00:00
ioccom.h I've fixed the X11 port, so I can remove the (ioctl) hack. 2002-04-10 04:53:37 +00:00
ioctl_bt848.h
ioctl_compat.h
ioctl_meteor.h
ioctl.h Hide GCCisms in the non-GCC case. 2002-02-26 07:44:03 +00:00
ipc.h Remove __P 2002-03-19 20:18:42 +00:00
jail.h Include <sys/queue.h> so that this file provides its own namespace 2002-05-06 03:13:08 +00:00
joystick.h Fix typo in the BSD copyright: s/withough/without/ 2002-06-02 20:05:59 +00:00
jumbo.h Remove the advertising clause from the Duke BSD copyright on the 2002-07-06 02:44:15 +00:00
kbio.h Implement keyboard paste 2001-03-11 22:51:05 +00:00
kenv.h Rework the kernel environment subsystem. We now convert the static 2002-04-17 13:06:36 +00:00
kernel.h Add a new SYSINIT subsystem for KTRACE. 2002-06-07 05:11:39 +00:00
kerneldump.h Restore the ability to take crashdumps on alpha. This was cut and pasted 2002-05-11 21:53:46 +00:00
kobj.h Convert hit and miss counters to unsigned values. Surely negative values 2002-06-10 22:40:26 +00:00
kse.h Add kernel support needed for the KSE-aware libpthread: 2002-09-16 19:28:01 +00:00
kthread.h Remove __P 2002-03-19 20:18:42 +00:00
ktr.h - Add support for logging KTR via ALQ. This is optional and enabled by the 2002-09-22 07:13:45 +00:00
ktrace.h Overhaul the ktrace subsystem a bit. For the most part, the actual vnode 2002-06-07 05:32:59 +00:00
libkern.h Hook up libkern/strlcpy.c and libkern/strlcat.c after repocopy. 2002-09-02 20:16:22 +00:00
linedisc.h Used protected names (_foo) for parameter names. This helps clean up 2002-04-21 10:57:43 +00:00
link_aout.h Repo copy link.h to sys/link_elf.h and sys/link_aout.h since they are 2002-08-22 20:35:23 +00:00
link_elf.h Repo copy link.h to sys/link_elf.h and sys/link_aout.h since they are 2002-08-22 20:35:23 +00:00
linker_set.h Add a __section(x) macro as well. Use this in linker_set.h. ie: 2002-09-23 06:11:29 +00:00
linker.h Make the consumers of the linker_load_file() function use 2002-08-02 20:56:07 +00:00
lock.h Forward declare struct thread so that this header doesn't depend on its 2002-08-28 05:14:55 +00:00
lockf.h Remove __P 2002-03-19 20:18:42 +00:00
lockmgr.h Record the file, line, and pid of the last successful shared lock holder. This 2002-05-30 05:55:22 +00:00
mac_policy.h Pass active_cred and file_cred into the MAC framework explicitly 2002-08-19 19:04:53 +00:00
mac.h Pass active_cred and file_cred into the MAC framework explicitly 2002-08-19 19:04:53 +00:00
malloc.h Garbage-collected splmem. 2002-09-15 17:10:18 +00:00
mbuf.h more style fixes: 'unsigned' should be 'u_int' in this file. 2002-09-18 22:29:33 +00:00
mchain.h Move m_fixhdr() from "mbchain" to "mbuf" where it belongs. 2002-09-18 13:41:37 +00:00
md4.h Import kernel part of SMB/CIFS requester. 2001-04-10 07:59:06 +00:00
md5.h Oops, this should have been part of my previous commit. 2002-06-24 14:18:39 +00:00
mdioctl.h Actually make use of the md_version field of 'struct mdio'. In order 2001-12-20 06:38:21 +00:00
memrange.h Some BIOSs are using MTRR values that are only documented under NDA 2002-09-15 15:07:55 +00:00
mman.h mlockall() and munlockall() are unimplemented; remove their prototypes. 2002-09-13 18:29:15 +00:00
module.h - Lock down the ``module'' structure by adding an SX lock that is used by 2002-03-18 07:45:30 +00:00
mount.h Keep a copy of the credential used to mount filesystems around so 2002-08-19 06:52:21 +00:00
mouse.h Minor changes: 2002-03-24 03:07:07 +00:00
msg.h fix comment typo: naem -> name 2002-08-16 07:42:18 +00:00
msgbuf.h Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 08:46:52 +00:00
mtio.h Make the mtio data structures explicitly sized. 2002-05-14 07:30:13 +00:00
mutex.h Disable optimization of spinlocks on UP kernels w/o debugging for now 2002-07-27 16:54:23 +00:00
namei.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
nlist_aout.h Pad after "char *n_name;" in the !_AOUT_INCLUDE_ case so that struct nlist 2002-09-05 08:03:02 +00:00
param.h Add an NBBY define to eventually replace the one in <sys/types.h>. 2002-09-23 22:01:10 +00:00
pciio.h style(9) the structure definitions. 2001-09-05 01:22:14 +00:00
pcpu.h Whitespace and style fixes. 2002-08-20 19:50:30 +00:00
pioctl.h Kernel modifications necessary to allow to follow fork()ed children. 2002-08-04 01:07:02 +00:00
pipe.h Move to a nested include of _label.h instead of mac.h in sys/sys/*.h 2002-08-14 01:04:43 +00:00
poll.h Reconnect a comment with its code. 2002-07-10 04:47:25 +00:00
posix4.h Add the rest of the kernel support for the sem_ API in kern/uipc_sem.c. 2002-09-19 00:43:32 +00:00
power.h Very minor warns fix. Add a declaration for an unused parameter. 2002-07-15 14:06:03 +00:00
priority.h style(9) the structure definitions. 2001-09-05 01:22:14 +00:00
proc.h Remove a bunch of stuff that is surplus now 2002-09-23 08:04:30 +00:00
procfs.h Use explicit sizes for the prpsinfo command length string so that 2001-08-16 08:35:51 +00:00
protosw.h make the strings for tcptimers, tanames and prurequests const to silence 2002-08-16 09:07:59 +00:00
ptio.h
ptrace.h Implement PT_IO (read / write arbitrary amounts of data or text). 2002-03-16 02:40:02 +00:00
queue.h Add a macro for SLIST traversal 'SLIST_FOREACH_PREVPTR', 2002-08-05 05:18:43 +00:00
random.h Provide infrastructure for harvesting SWI entropy. 2002-03-03 20:09:42 +00:00
reboot.h Add new boot flag to i386 boot: -p. 2001-12-10 20:02:22 +00:00
regression.h Remove __P 2002-03-19 20:18:42 +00:00
resource.h Part I of RLIMIT_VMEM implementation. Implement core functionality for 2002-06-26 00:29:28 +00:00
resourcevar.h Widen struct sockbuf's sb_timeo member to int from short. With 2002-07-24 03:02:43 +00:00
rman.h Add a rman_reserve_resource_bound() function that takes an additional 2001-12-21 21:40:55 +00:00
rtprio.h Remove __P 2002-03-19 20:18:42 +00:00
runq.h Make the run queue parameters machine dependent. Optimize 64 bit 2002-05-25 01:12:23 +00:00
sbuf.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
select.h o Move select() helper macros from <sys/types.h> to <sys/select.h>. 2002-09-23 17:45:51 +00:00
selinfo.h Remove __P 2002-03-19 20:18:42 +00:00
sem.h Remove __P 2002-03-19 20:18:42 +00:00
sema.h Added used includes. <sys/_lock.h> is a prerequisite for <sys/_mutex.h>, 2001-10-10 10:26:07 +00:00
semaphore.h Remove __P. 2002-03-19 22:20:14 +00:00
shm.h Remove __P 2002-03-19 20:18:42 +00:00
signal.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
signalvar.h Part 1 of KSE-III 2002-06-29 17:26:22 +00:00
smp.h Forward declare struct thread. 2002-05-20 16:11:38 +00:00
snoop.h - Spell "these" properly. 2002-09-10 03:58:44 +00:00
socket.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
socketvar.h In continuation of early fileop credential changes, modify fo_ioctl() to 2002-08-17 02:36:16 +00:00
sockio.h Style consistency fix for MAC ioctls added previously. 2002-02-10 16:55:35 +00:00
soundcard.h Remove __P 2002-03-19 20:18:42 +00:00
stat.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
statvfs.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
stdint.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
sun_disklabel.h Add a hack (ported from NetBSD) to support Sun disk labels. 2002-05-09 20:22:59 +00:00
sx.h - Make this compile if INVARIANTS support is not enabled. 2002-04-02 18:18:56 +00:00
syscall.h Regen for added syscalls. 2002-09-19 00:48:57 +00:00
syscall.mk Regen for added syscalls. 2002-09-19 00:48:57 +00:00
syscallsubr.h Split up ptrace() into a wrapper that does the copying to and from 2002-09-05 01:02:50 +00:00
sysctl.h Introduce a new sysctl flag, CTLFLAG_SKIP, which will cause 2002-08-10 19:56:45 +00:00
sysent.h Added fields for VM_MIN_ADDRESS, PS_STRINGS and stack protections to 2002-09-01 21:41:24 +00:00
syslimits.h Claim to be 1003.1-2001. We're not quite, yet, but that's a more useful 2002-09-21 02:19:03 +00:00
syslog.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
sysproto.h Regen for added syscalls. 2002-09-19 00:48:57 +00:00
systm.h Make UAREA_PAGES and KSTACK_PAGES visible to userland via sysctl, like 2002-09-07 22:11:45 +00:00
taskqueue.h Revert the reindentation of struct task's definition from rev 1.4. 2001-10-28 16:19:34 +00:00
termios.h Remove __P 2002-03-19 20:18:42 +00:00
tiio.h At long last, commit the zero copy sockets code. 2002-06-26 03:37:47 +00:00
time.h Fix visibility issues; use <sys/timespec.h>. 2002-06-15 23:37:33 +00:00
timeb.h Remove __P 2002-03-19 20:18:42 +00:00
timepps.h Brucifixion ? Yes, out that door, row on the left, one patch each. 2002-04-30 19:48:45 +00:00
timers.h
times.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
timespec.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
timetc.h Give up on calling tc_ticktock() from a timeout, we have timeout 2002-09-04 10:15:19 +00:00
timex.h Removed unused forward struct declaration. 2002-04-28 09:51:45 +00:00
tree.h Import OpenBSD's <sys/tree.h>, needed by OpenSSH. 2002-06-23 14:38:51 +00:00
tty.h Fixed some style bugs in recent commits. 2002-05-28 15:24:13 +00:00
ttychars.h
ttycom.h
ttydefaults.h
ttydev.h Add B921600 (yes, some serial ports can do this, but generic sio not support 2001-06-20 03:26:41 +00:00
types.h o Move select() helper macros from <sys/types.h> to <sys/select.h>. 2002-09-23 17:45:51 +00:00
ucontext.h Add kernel support needed for the KSE-aware libpthread: 2002-09-16 19:28:01 +00:00
ucred.h Allow one to grab the definition of struct ucred by defining _WANT_UCRED 2002-08-28 20:39:48 +00:00
uio.h At long last, commit the zero copy sockets code. 2002-06-26 03:37:47 +00:00
un.h o Merge <machine/ansi.h> and <machine/types.h> into a new header 2002-08-21 16:20:02 +00:00
unistd.h Whitespace fixes (mainly for many more messes in the definitions of the 2002-09-21 22:57:52 +00:00
unpcb.h More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
user.h Adjust KINFO_PROC_SIZE due to segsz_t being changed from a 32-bit to 2002-05-03 01:41:37 +00:00
utsname.h Round 1 of Brucification inspired changes. 2001-03-24 08:37:56 +00:00
uuid.h Add uuidgen(2) and uuidgen(1). 2002-05-28 06:16:08 +00:00
vmmeter.h Make a structure definition slightly more style(9) compliant (makes 2002-06-01 03:55:16 +00:00
vnioctl.h
vnode.h - Lock down the syncer with sync_mtx. 2002-09-25 02:22:21 +00:00
wait.h Remove the deprecated 4.2/4.3BSD wait union. 2002-06-05 02:21:01 +00:00
xrpuio.h