freebsd-skq/sys/kern
Robert Watson d861372b14 Add additional annotations to soreceive(), documenting the effects of
locking on 'nextrecord' and concerns regarding potentially inconsistent
or stale use of socket buffer or stack fields if they aren't carefully
synchronized whenever the socket buffer mutex is released.  Document
that the high-level sblock() prevents races against other readers on
the socket.

Also document the 'type' logic as to how soreceive() guarantees that
it will only return one of normal data or inline out-of-band data.
2004-07-11 18:29:47 +00:00
..
bus_if.m Introduce BUS_CONFIG_INTR(). The method allows devices to tell parents 2003-09-10 21:37:10 +00:00
clock_if.m
device_if.m Expand and rewrite documentation using doxygen markup so that we can 2004-07-11 16:17:42 +00:00
genassym.sh
imgact_aout.c Change the types of vn_rdwr_inchunks()'s len and aresid arguments to 2004-06-05 02:18:28 +00:00
imgact_elf32.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
imgact_elf64.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
imgact_elf.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
imgact_gzip.c Locking for the per-process resource limits structure. 2004-02-04 21:52:57 +00:00
imgact_shell.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
inflate.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
init_main.c Nice, is a property of a process as a whole.. 2004-06-16 00:26:31 +00:00
init_sysent.c Regen. 2004-07-02 00:38:56 +00:00
kern_acct.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
kern_acl.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
kern_alq.c Allow MAC policies to block/revoke kern_alq write access to a file. 2003-10-25 16:10:41 +00:00
kern_clock.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_condvar.c Remove the signal_caught argument from sleepq_timedwait() as it was 2004-06-28 18:57:06 +00:00
kern_conf.c Fix a few spelling mistakes in comments and clean them up a bit. 2004-06-22 20:22:24 +00:00
kern_context.c Change the clear_ret argument of get_mcontext() to be a flags argument. 2003-11-09 20:31:04 +00:00
kern_descrip.c Explicitly initialize f_data and f_vnode to NULL. 2004-06-19 11:40:08 +00:00
kern_environment.c If the buffer supplied to kenv(KENV_DUMP, ...) isn't big enough, 2004-04-28 01:27:33 +00:00
kern_event.c Introduce a new kevent filter. EVFILT_FS that will be used to signal 2004-07-04 10:52:54 +00:00
kern_exec.c Move TDF_SA from td_flags to td_pflags (and rename it accordingly) 2004-06-02 07:52:36 +00:00
kern_exit.c (1) Removed the bogus condition "p->p_pid != 1" on calling sched_exit() 2004-06-21 14:49:50 +00:00
kern_fork.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
kern_idle.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
kern_intr.c Implement preemption of kernel threads natively in the scheduler rather 2004-07-02 20:21:44 +00:00
kern_jail.c Add two missing includes and remove two uneeded. 2004-06-27 09:03:22 +00:00
kern_kse.c Allocate TIDs in thread_init() and deallocate them in thread_fini(). 2004-06-26 18:58:22 +00:00
kern_kthread.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_ktr.c Update the license on this file to be a bit more sane. 2003-09-10 01:09:32 +00:00
kern_ktrace.c Clean up and wash struct iovec and struct uio handling. 2004-07-10 15:42:16 +00:00
kern_linker.c Trim a few things from the dmesg output and stick them under bootverbose to 2004-07-01 07:46:29 +00:00
kern_lock.c Move TDF_DEADLKTREAT into td_pflags (and rename it accordingly) to avoid 2004-06-03 01:47:37 +00:00
kern_lockf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
kern_mac.c Add /* !MAC */ to final #endif. 2004-05-03 22:54:46 +00:00
kern_malloc.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_mbuf.c Fix a couple of bugs in the mbuf and packet ctors. In the latter case, 2004-06-01 16:17:10 +00:00
kern_mib.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
kern_module.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_mtxpool.c Rearrange the SYSINIT order to call lockmgr_init() earlier so that 2003-07-16 01:00:39 +00:00
kern_mutex.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_ntptime.c Annual NTP kernel code spring-cleaning: 2004-03-14 15:23:05 +00:00
kern_physio.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
kern_poll.c Add a NULL param to an mi_switch() that I missed. 2004-07-03 02:38:03 +00:00
kern_proc.c Fill in the values for the ki_tid and ki_numthreads which have been 2004-06-20 22:17:22 +00:00
kern_prot.c Socket MAC labels so_label and so_peerlabel are now protected by 2004-06-13 02:50:07 +00:00
kern_resource.c Turned off the "calcru: negative time" warning for certain SMP cases 2004-06-21 17:46:27 +00:00
kern_sema.c Change the return value of sema_timedwait() so it returns 0 on 2004-06-14 18:19:05 +00:00
kern_shutdown.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_sig.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
kern_subr.c Clean up and wash struct iovec and struct uio handling. 2004-07-10 15:42:16 +00:00
kern_switch.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_sx.c Fix _sx_assert() to panic() rather than printf() when an assertion fails 2004-02-27 16:13:44 +00:00
kern_synch.c Update for the KDB framework: 2004-07-10 21:36:01 +00:00
kern_syscalls.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
kern_sysctl.c Make sysctl_wire_old_buffer() respect ENOMEM from vslock() by marking 2004-06-11 02:20:37 +00:00
kern_tc.c Just because the timecounter reads the same value on two samples 2004-03-04 14:14:23 +00:00
kern_thr.c Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
kern_thread.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
kern_time.c Update previous commit to: 2004-06-21 22:34:57 +00:00
kern_timeout.c The paper "Hashed Timers and Hierarchical Wheels: Data Structures for the 2004-04-25 04:10:17 +00:00
kern_umtx.c Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
kern_uuid.c Fix generation of random multicast MAC address. 2004-01-22 13:34:11 +00:00
kern_xxx.c Deorbit COMPAT_SUNOS. 2004-06-11 11:16:26 +00:00
ksched.c sched_setscheduler: Return EINVAL when a invalid policy is specified, 2003-09-13 18:46:24 +00:00
link_elf_obj.c Wrap long line. 2004-06-29 03:13:54 +00:00
link_elf.c Make the GDB dynamic linker hooks (r_debug_state) conditional upon 2004-07-10 21:37:30 +00:00
linker_if.m The method link_preload_finish is not static. 2003-09-20 17:39:32 +00:00
Make.tags.inc
Makefile
makesyscalls.sh Remove the namespace column from the syscalls tables. We don't actually 2003-12-23 03:50:43 +00:00
md4c.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
md5c.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
p1003_1b.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
posix4_mib.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
sched_4bsd.c Implement preemption of kernel threads natively in the scheduler rather 2004-07-02 20:21:44 +00:00
sched_ule.c Update for the KDB framework: 2004-07-10 21:38:22 +00:00
subr_acl_posix1e.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
subr_autoconf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_blist.c Move the definitions of SWAPBLK_NONE and SWAPBLK_MASK from vm_page.h to 2004-06-04 04:03:26 +00:00
subr_bus.c Hide struct resource and struct rman. You must define 2004-06-30 16:54:10 +00:00
subr_clist.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
subr_clock.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_devstat.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
subr_disk.c Report bio_pblkbo instead of bio_blkno. 2003-10-18 17:27:10 +00:00
subr_eventhandler.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_hints.c Add a resource_disabled() helper function that returns true (non-zero) if 2003-07-02 16:01:38 +00:00
subr_kdb.c Fix braino: Make sure there is a current backend before we return its 2004-07-11 15:22:43 +00:00
subr_kobj.c * Add multiple inheritance to kobj. Each class can have zero or more base 2003-10-16 09:16:28 +00:00
subr_log.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
subr_mbpool.c Pass MTX_DEF as the last argument to mtx_init() instead of 0. This 2003-12-07 21:53:41 +00:00
subr_mchain.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_module.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_msgbuf.c Put the message about msgbuf cksum mismatch under bootverbose and tell 2003-09-05 11:12:00 +00:00
subr_param.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_pcpu.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
subr_power.c Move the kernel power change printf under bootverbose since the 2004-01-02 18:24:13 +00:00
subr_prf.c Update for the KDB framework: 2004-07-10 21:43:23 +00:00
subr_prof.c Tidy up uprof locking. Mostly the fields are protected by both the proc 2004-07-02 03:50:48 +00:00
subr_rman.c Add ability to set start/end for rman 2004-07-01 16:22:10 +00:00
subr_rtc.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_sbuf.c Cosmetic adjustment to previous commit: name the second argument to 2004-07-09 11:37:44 +00:00
subr_scanf.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
subr_sleepqueue.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
subr_smp.c Move the CPU newbus attachment to i386 legacy. The acpi_cpu device will 2004-05-06 15:54:02 +00:00
subr_taskqueue.c - Execute all of the tasks on the taskqueue during taskqueue_free() after 2004-06-28 16:28:23 +00:00
subr_trap.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
subr_turnstile.c - Change mi_switch() and sched_switch() to accept an optional thread to 2004-07-02 19:09:50 +00:00
subr_witness.c Update for the KDB framework: 2004-07-10 21:42:16 +00:00
sys_generic.c Clean up and wash struct iovec and struct uio handling. 2004-07-10 15:42:16 +00:00
sys_pipe.c Revise the direct or optimized case to use uiomove_fromphys() by the reader 2004-03-27 19:50:23 +00:00
sys_process.c Allow ptrace to deal with lwpid. 2004-07-02 09:19:22 +00:00
sys_socket.c Annotate two intentionally unlocked reads with comments. 2004-06-20 17:35:50 +00:00
syscalls.c Regen. 2004-07-02 00:38:56 +00:00
syscalls.master Change the thread ID (thr_id_t) used for 1:1 threading from being a 2004-07-02 00:40:07 +00:00
sysv_ipc.c Use __FBSDID(). 2003-06-11 00:56:59 +00:00
sysv_msg.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
sysv_sem.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
sysv_shm.c Eliminate struct shm_handle. It is an unnecessary level of indirection to 2004-07-09 05:28:38 +00:00
tty_compat.c Put the pre FreeBSD-2.x tty compat code under BURN_BRIDGES. 2004-06-21 22:57:16 +00:00
tty_conf.c Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
tty_cons.c Update for the KDB framework: 2004-07-10 21:43:23 +00:00
tty_pty.c Gah! commit from wrong tree. 2004-06-25 22:10:20 +00:00
tty_subr.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
tty_tty.c Second half of the dev_t cleanup. 2004-06-17 17:16:53 +00:00
tty.c Introduce ttygone() which indicates that the hardware is detached. 2004-07-11 15:18:39 +00:00
uipc_accf.c Add a global mutex, accept_filter_mtx, to protect the global list of 2004-06-01 04:08:48 +00:00
uipc_cow.c In some cases, sf_buf_alloc() should sleep with pri PCATCH; in others, it 2004-04-03 09:16:27 +00:00
uipc_domain.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
uipc_jumbo.c Lock the vm object when removing a page. 2003-06-11 21:23:04 +00:00
uipc_mbuf2.c Bring in mbuma to replace mballoc. 2004-05-31 21:46:06 +00:00
uipc_mbuf.c Gah! Plug a mbuf leak I introduced in the last commit. 2004-06-11 18:17:25 +00:00
uipc_proto.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
uipc_sem.c Add missing #include <sys/module.h> 2004-05-30 20:34:58 +00:00
uipc_sockbuf.c Reduce the number of unnecessary unlock-relocks on socket buffer mutexes 2004-06-26 19:10:39 +00:00
uipc_socket2.c Reduce the number of unnecessary unlock-relocks on socket buffer mutexes 2004-06-26 19:10:39 +00:00
uipc_socket.c Add additional annotations to soreceive(), documenting the effects of 2004-07-11 18:29:47 +00:00
uipc_syscalls.c Clean up and wash struct iovec and struct uio handling. 2004-07-10 15:42:16 +00:00
uipc_usrreq.c We allocate an array of pointers to the global file table while 2004-07-02 07:40:10 +00:00
vfs_acl.c Update my personal copyrights and NETA copyrights in the kernel 2004-02-22 00:33:12 +00:00
vfs_aio.c Merge additional socket buffer locking from rwatson_netperf: 2004-06-17 22:48:11 +00:00
vfs_bio.c Fix bug introduced in rev 1.434: 2004-07-06 23:40:40 +00:00
vfs_cache.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_cluster.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_default.c style(9) 2004-07-07 07:00:02 +00:00
vfs_export.c Include <sys/mutex.h> and its prerequisite <sys/lock.h> instesd of depending 2004-04-21 12:10:30 +00:00
vfs_extattr.c Don't cuddle else's so much as we removed additional parts of each 2004-06-24 17:22:29 +00:00
vfs_init.c do the vfsstd thing instead of messing up our VFS_SYSCTL macro. 2004-07-07 06:58:29 +00:00
vfs_lookup.c Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00
vfs_mount.c Clean up and wash struct iovec and struct uio handling. 2004-07-10 15:42:16 +00:00
vfs_subr.c Update for the KDB framework: 2004-07-10 21:47:53 +00:00
vfs_syscalls.c Don't cuddle else's so much as we removed additional parts of each 2004-06-24 17:22:29 +00:00
vfs_vnops.c Update for the KDB framework: 2004-07-10 21:47:53 +00:00
vnode_if.src Remove advertising clause from University of California Regent's license, 2004-04-05 21:03:37 +00:00