freebsd-nq/sys/kern
Seigo Tanimura 243917fe3b Lock down a socket, milestone 1.
o Add a mutex (sb_mtx) to struct sockbuf. This protects the data in a
  socket buffer. The mutex in the receive buffer also protects the data
  in struct socket.

o Determine the lock strategy for each members in struct socket.

o Lock down the following members:

  - so_count
  - so_options
  - so_linger
  - so_state

o Remove *_locked() socket APIs.  Make the following socket APIs
  touching the members above now require a locked socket:

 - sodisconnect()
 - soisconnected()
 - soisconnecting()
 - soisdisconnected()
 - soisdisconnecting()
 - sofree()
 - soref()
 - sorele()
 - sorwakeup()
 - sotryfree()
 - sowakeup()
 - sowwakeup()

Reviewed by:	alfred
2002-05-20 05:41:09 +00:00
..
bus_if.m Use protected names (_foo) to cutdown on boatloads of lint warnings. 2002-04-21 11:16:10 +00:00
clock_if.m Add a generic implementation of inittodr() and resettodr(), as well as 2002-04-04 23:39:10 +00:00
device_if.m
genassym.sh
imgact_aout.c - Change fill_kinfo_proc() to require that the process is locked when it 2002-04-09 20:10:46 +00:00
imgact_elf.c
imgact_gzip.c Modernize my email address. 2002-03-25 13:52:45 +00:00
imgact_shell.c
inflate.c Modernize my email address. 2002-03-25 13:52:45 +00:00
init_main.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
init_sysent.c Add the lchflags(2) syscall. 2002-05-05 23:47:41 +00:00
kern_acct.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
kern_acl.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
kern_cap.c
kern_clock.c Fixed breakage of binary compatibility of the kern.clockrate sysctl in 2002-05-05 04:33:09 +00:00
kern_condvar.c The cold and panicstr variables do not need to be protected by sched_lock. 2002-04-23 19:50:22 +00:00
kern_conf.c Break the following implementation of panic(3): 2002-04-25 13:17:33 +00:00
kern_descrip.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
kern_environment.c Cosmetic tweaks. Try and keep the style more consistent, catch some stray 2002-05-01 02:51:50 +00:00
kern_event.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_exec.c - Reorder execve() so that it performs blocking operations before it 2002-05-02 15:00:14 +00:00
kern_exit.c Make funsetown() take a 'struct sigio **' so that the locking can 2002-05-06 19:31:28 +00:00
kern_fork.c - Protect randompid and nprocs with the allproc_lock. 2002-05-02 15:13:45 +00:00
kern_idle.c
kern_intr.c - Set the base priority of an ithread that has no handlers when we set its 2002-04-11 21:03:35 +00:00
kern_jail.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern_kthread.c
kern_ktr.c Remove a stale comment. 2002-04-06 08:44:04 +00:00
kern_ktrace.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_linker.c Test if rootvnode is NULL rather than if rootdev is NODEV when determining 2002-04-26 09:52:54 +00:00
kern_lock.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern_lockf.c
kern_malloc.c Hide a pointer to the malloc_type bucket at the end of the freed memory. If 2002-05-02 09:07:04 +00:00
kern_mib.c - Add a mutex to lock the global securelevel value. 2002-04-02 17:43:17 +00:00
kern_module.c
kern_mtxpool.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern_mutex.c Change mtx_init() to now take an extra argument. The third argument is 2002-04-04 20:52:27 +00:00
kern_ntptime.c Hide the private parts of timecounter from a couple of places that don't 2002-04-26 21:31:44 +00:00
kern_physio.c Use btodb() macro. 2002-05-18 09:34:09 +00:00
kern_poll.c
kern_proc.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_prot.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_resource.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_sema.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern_shutdown.c Fix alpha build. The alpha has dumpsys implemented. 2002-05-12 18:27:28 +00:00
kern_sig.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
kern_subr.c o Condition the compilation of uiomoveco() and vm_uiomove() 2002-05-05 22:42:40 +00:00
kern_switch.c Remove runq_findproc. This never worked right in the first place and can 2002-05-08 04:39:49 +00:00
kern_sx.c Set the lock type equal to the lock name for now as all of the current 2002-04-04 20:49:35 +00:00
kern_synch.c
kern_syscalls.c
kern_sysctl.c Update comment regarding the locking of the sysctl tree. 2002-04-02 05:50:07 +00:00
kern_tc.c Initialize time_second to 1 instead of zero to pacify slightly bogus arp code. 2002-05-03 08:46:03 +00:00
kern_time.c Hide the private parts of timecounter from a couple of places that don't 2002-04-26 21:31:44 +00:00
kern_timeout.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
kern_xxx.c Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ksched.c
link_aout.c
link_elf_obj.c Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
link_elf.c Don't use the symbol name to lookup the symbol value when we can use 2002-04-25 01:22:16 +00:00
linker_if.m
Make.tags.inc
Makefile
makesyscalls.sh Usage style sweep: spell "usage" with a small 'u'. 2002-04-22 13:44:47 +00:00
md4c.c
md5c.c
p1003_1b.c Change p_can{debug,see,sched,signal}()'s first argument to be a thread 2002-05-19 00:14:50 +00:00
posix4_mib.c
subr_acl_posix1e.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
subr_autoconf.c
subr_blist.c Now that daddr_t has grown up, use %lld to printf it and cast it to long 2002-05-18 23:46:04 +00:00
subr_bus.c Don't call malloc(9) to allocate zero bytes softc data for devices. 2002-04-23 15:48:23 +00:00
subr_clist.c
subr_clock.c Add a generic implementation of inittodr() and resettodr(), as well as 2002-04-04 23:39:10 +00:00
subr_devstat.c
subr_disk.c Implement DIOCGFRONTSTUFF ioctl which reports how many bytes from the start 2002-04-09 15:43:32 +00:00
subr_disklabel.c Comment out Kirks io-request priority hack until we can do this in a 2002-04-22 06:53:20 +00:00
subr_diskmbr.c
subr_diskslice.c Retire the bogus uses of the disklabel field d_sbsize and begin to 2002-05-12 20:49:41 +00:00
subr_eventhandler.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
subr_hints.c Cosmetic tweaks. Try and keep the style more consistent, catch some stray 2002-05-01 02:51:50 +00:00
subr_kobj.c
subr_log.c Make funsetown() take a 'struct sigio **' so that the locking can 2002-05-06 19:31:28 +00:00
subr_mbuf.c Separate "seperate" from kernel source. 2002-05-16 22:43:20 +00:00
subr_mchain.c Move the new byte order function prototypes from <sys/param.h> to 2002-04-26 22:48:23 +00:00
subr_module.c
subr_param.c Improve the implementation of adjtime(2). 2002-04-15 12:23:11 +00:00
subr_pcpu.c
subr_power.c
subr_prf.c Add a sysctl which disables the logging of console output. 2002-04-29 09:15:38 +00:00
subr_prof.c
subr_rman.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
subr_rtc.c Add a generic implementation of inittodr() and resettodr(), as well as 2002-04-04 23:39:10 +00:00
subr_sbuf.c
subr_scanf.c
subr_smp.c Updated a doubly stale comment about signotify(). Fixed a nearby long line. 2002-04-05 10:00:37 +00:00
subr_taskqueue.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
subr_trap.c Moved signal handling and rescheduling from userret() to ast() so that 2002-04-04 17:49:48 +00:00
subr_turnstile.c Change mtx_init() to now take an extra argument. The third argument is 2002-04-04 20:52:27 +00:00
subr_witness.c Make funsetown() take a 'struct sigio **' so that the locking can 2002-05-06 19:31:28 +00:00
subr_xxx.c Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
sys_generic.c o Correct an error made in revision 1.65: In readv(), if uap->iovcnt is 2002-05-09 02:30:41 +00:00
sys_pipe.c Make funsetown() take a 'struct sigio **' so that the locking can 2002-05-06 19:31:28 +00:00
sys_process.c All signals can be sent to the inferior process when it's restarted, 2002-05-19 01:37:43 +00:00
sys_socket.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
syscalls.c Add the lchflags(2) syscall. 2002-05-05 23:47:41 +00:00
syscalls.master Add an entry for the lchflags(2) syscall. It's useful to prevent 2002-05-05 23:37:44 +00:00
sysv_ipc.c Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sysv_msg.c Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sysv_sem.c
sysv_shm.c
tty_compat.c Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-24 05:09:11 +00:00
tty_conf.c
tty_cons.c Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
tty_pty.c - Lock proctree_lock instead of pgrpsess_lock. 2002-04-16 17:09:22 +00:00
tty_subr.c
tty_tty.c
tty.c Make funsetown() take a 'struct sigio **' so that the locking can 2002-05-06 19:31:28 +00:00
uipc_accf.c
uipc_domain.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
uipc_mbuf2.c just merged cosmetic changes from KAME to ease sync between KAME and FreeBSD. 2002-04-19 04:46:24 +00:00
uipc_mbuf.c Fix corner case where m_len was not being initialized. 2002-04-12 00:01:50 +00:00
uipc_proto.c
uipc_sockbuf.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
uipc_socket2.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
uipc_socket.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
uipc_syscalls.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
uipc_usrreq.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
vfs_acl.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_aio.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
vfs_bio.c Remove a six year old undocumented #ifdef : NO_B_MALLOC. 2002-05-04 19:24:55 +00:00
vfs_cache.c Disable the shared locking namei() code for now. It breaks several stacking 2002-05-14 21:59:49 +00:00
vfs_cluster.c Make daddr_t and u_daddr_t 64bits wide. 2002-05-14 11:09:43 +00:00
vfs_conf.c Rework the kernel environment subsystem. We now convert the static 2002-04-17 13:06:36 +00:00
vfs_default.c Remove a stale comment saying that the vnode lock must be the first 2002-04-27 22:20:33 +00:00
vfs_export.c Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-24 05:09:11 +00:00
vfs_extattr.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_init.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_lookup.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_mount.c Rework the kernel environment subsystem. We now convert the static 2002-04-17 13:06:36 +00:00
vfs_subr.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_syscalls.c More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
vfs_vnops.c Disable the shared locking namei() code for now. It breaks several stacking 2002-05-14 21:59:49 +00:00
vnode_if.src Make daddr_t and u_daddr_t 64bits wide. 2002-05-14 11:09:43 +00:00