1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-22 11:17:19 +00:00
freebsd/sys/kern
Bosko Milekic 4bde2ac539 Fix is a similar race condition as existed in the mbuf code. When we go
into an interruptable sleep and we increment a sleep count, we make sure
that we are the thread that will decrement the count when we wakeup.
Otherwise, what happens is that if we get interrupted (signal) and we
have to wake up, but before we get our mutex, some thread that wants
to wake us up detects that the count is non-zero and so enters wakeup_one(),
but there's nothing on the sleep queue and so we don't get woken up. The
thread will still decrement the sleep count, which is bad because we will
also decrement it again later (as we got interrupted) and are already off
the sleep queue.
2001-03-08 19:21:45 +00:00
..
bus_if.m
device_if.m
genassym.sh
gensetdefs.pl
imgact_aout.c
imgact_elf.c Do not set a default ELF syscall ABI fallback. 2001-03-04 11:58:50 +00:00
imgact_gzip.c
imgact_shell.c
inflate.c
init_main.c Do not set a default ELF syscall ABI fallback. 2001-03-04 11:58:50 +00:00
init_sysent.c
kern_acct.c
kern_acl.c o Introduce filesystem-independent POSIX.1e ACL utility routines to 2001-03-06 17:28:24 +00:00
kern_cap.c
kern_clock.c Changed the aston() family to operate on a specified process instead of 2001-02-19 04:15:59 +00:00
kern_condvar.c Use the proc lock to protect access to p_sigacts->ps_sigintr. 2001-03-07 03:26:39 +00:00
kern_conf.c Fixes to track snapshot copy-on-write checking in the specinfo 2001-03-07 07:09:55 +00:00
kern_descrip.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
kern_environment.c
kern_event.c Add an EV_SET() convenience macro for initializing struct kevent prior 2001-02-24 01:44:03 +00:00
kern_exec.c Proc locking. 2001-03-07 03:27:32 +00:00
kern_exit.c - Call proc_reparent() when handing a process off to init in exit rather 2001-03-07 02:22:31 +00:00
kern_fork.c - Don't hold the proc lock across VREF and the fd* functions to avoid lock 2001-03-07 05:21:47 +00:00
kern_idle.c Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
kern_intr.c Ok, the kernel will panic in kmem_malloc() if the kernel map is full, so 2001-03-02 06:07:38 +00:00
kern_jail.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
kern_kthread.c - Use _PHOLD and move it before a PROC_UNLOCK to reduce the number of 2001-03-07 02:36:47 +00:00
kern_ktr.c - In the KTR_EXTEND case, use a const char * to point to the passed in 2001-02-20 10:39:55 +00:00
kern_ktrace.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
kern_linker.c
kern_lock.c
kern_lockf.c
kern_malloc.c
kern_mib.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
kern_module.c
kern_mutex.c - Add an extra check in priority_propagation() for UP systems to ensure we 2001-03-07 02:45:15 +00:00
kern_ntptime.c
kern_physio.c
kern_proc.c Bitch more loudly when someone botches changes to kinfo_proc 2001-03-07 06:52:12 +00:00
kern_prot.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
kern_random.c
kern_resource.c Backout previous commit. sched_lock is held, thus interrupts are prevented 2001-02-22 20:12:52 +00:00
kern_shutdown.c Lock initproc when we send SIGINT to init during shutdown. 2001-03-07 02:50:09 +00:00
kern_sig.c - Proc locking. Most of signal handling is now MP safe and doesn't require 2001-03-07 02:59:54 +00:00
kern_subr.c Introduce copyinfrom and copyinstrfrom, which can copy data from either 2001-02-16 14:31:49 +00:00
kern_switch.c - Assert that the proc to return is not NULL in runq_choose the 2001-02-24 14:06:36 +00:00
kern_sx.c In order to avoid recursing on the backing mutex for sx locks in the 2001-03-06 23:13:15 +00:00
kern_synch.c - Proc locking. 2001-03-07 03:01:53 +00:00
kern_syscalls.c
kern_sysctl.c Make the SYSCTL_OUT handlers sysctl_old_user() and sysctl_old_kernel() 2001-03-08 01:20:43 +00:00
kern_tc.c
kern_time.c Lock the process while sending it SIGARLM and updating p_realtimer. 2001-03-07 03:02:56 +00:00
kern_timeout.c
kern_xxx.c
ksched.c Lock need_resched with sched_lock. 2001-02-22 13:46:09 +00:00
link_aout.c Manually add an extra _ to _DYNAMIC since it is provided by ld, not gcc. 2001-02-25 07:25:05 +00:00
link_elf_obj.c Make this compile in a.out mode. link.h has extra dependencies for a.out. 2001-02-25 07:26:54 +00:00
link_elf.c Make this compile in a.out mode. link.h has extra dependencies for a.out. 2001-02-25 07:26:54 +00:00
linker_if.m
Make.tags.inc
makedevops.pl
Makefile
makeobjops.pl
makesyscalls.sh
md5c.c
p1003_1b.c
posix4_mib.c
subr_acl_posix1e.c o Introduce filesystem-independent POSIX.1e ACL utility routines to 2001-03-06 17:28:24 +00:00
subr_autoconf.c
subr_blist.c
subr_bus.c
subr_clist.c
subr_devstat.c
subr_disk.c
subr_disklabel.c
subr_diskmbr.c
subr_diskslice.c
subr_eventhandler.c
subr_kobj.c
subr_log.c
subr_mchain.c Remove superfluous m_pkthdr.rcv_if = NULL assignment following 2001-02-25 06:33:50 +00:00
subr_module.c Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
subr_param.c
subr_prf.c
subr_prof.c Since the PC is a pointer to a code address, change the second parameter of 2001-02-22 18:07:31 +00:00
subr_rman.c
subr_sbuf.c Make the KASSERTs report the correct function names. 2001-03-06 17:48:26 +00:00
subr_scanf.c
subr_smp.c Activate USER_LDT by default. The new thread libraries are going to 2001-02-23 01:25:02 +00:00
subr_taskqueue.c
subr_trap.c - Release Giant a bit earlier on syscall exit. 2001-03-07 03:53:39 +00:00
subr_turnstile.c - Add an extra check in priority_propagation() for UP systems to ensure we 2001-03-07 02:45:15 +00:00
subr_witness.c - Add an extra check in priority_propagation() for UP systems to ensure we 2001-03-07 02:45:15 +00:00
subr_xxx.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
sys_generic.c Grab the process lock while calling psignal and before calling psignal. 2001-03-07 03:37:06 +00:00
sys_pipe.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
sys_process.c - Proc locking. 2001-03-07 03:06:18 +00:00
sys_socket.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
syscalls.c
syscalls.master
sysv_ipc.c
sysv_msg.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
sysv_sem.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
sysv_shm.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
tty_compat.c
tty_conf.c
tty_cons.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
tty_pty.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
tty_snoop.c
tty_subr.c
tty_tty.c
tty.c Grab the process lock while calling psignal and before calling psignal. 2001-03-07 03:37:06 +00:00
uipc_accf.c
uipc_domain.c
uipc_mbuf2.c Long awaited style fixup in mbuf code. Get rid of K&R style prototyping 2001-02-11 05:02:06 +00:00
uipc_mbuf.c Fix parameter order in the calls to MGET(). 2001-02-21 09:24:13 +00:00
uipc_proto.c
uipc_sockbuf.c
uipc_socket2.c
uipc_socket.c In soshutdown(), use SHUT_{RD,WR,RDWR} instead of FREAD and FWRITE. 2001-02-27 13:48:07 +00:00
uipc_syscalls.c Fix is a similar race condition as existed in the mbuf code. When we go 2001-03-08 19:21:45 +00:00
uipc_usrreq.c o Move per-process jail pointer (p->pr_prison) to inside of the subject 2001-02-21 06:39:57 +00:00
vfs_acl.c o Introduce filesystem-independent POSIX.1e ACL utility routines to 2001-03-06 17:28:24 +00:00
vfs_aio.c Grab the process lock while calling psignal and before calling psignal. 2001-03-07 03:37:06 +00:00
vfs_bio.c Fix lockup for loopback NFS mounts. The pipelined I/O limitations could be 2001-02-28 04:13:11 +00:00
vfs_cache.c
vfs_cluster.c Fix lockup for loopback NFS mounts. The pipelined I/O limitations could be 2001-02-28 04:13:11 +00:00
vfs_conf.c Reviewed by: jlemon 2001-03-01 21:00:17 +00:00
vfs_default.c Added a dummy lookup vop. Specfs was broken by removing its dummy 2001-02-18 02:22:58 +00:00
vfs_export.c Add a NOTE_REVOKE flag for vnodes, which is triggered from within vclean(). 2001-02-23 20:06:01 +00:00
vfs_extattr.c Check to see if p_fd is NULL before derferencing it in checkdirs(). It's 2001-03-07 02:25:13 +00:00
vfs_init.c
vfs_lookup.c
vfs_mount.c Reviewed by: jlemon 2001-03-01 21:00:17 +00:00
vfs_subr.c Add a NOTE_REVOKE flag for vnodes, which is triggered from within vclean(). 2001-02-23 20:06:01 +00:00
vfs_syscalls.c Check to see if p_fd is NULL before derferencing it in checkdirs(). It's 2001-03-07 02:25:13 +00:00
vfs_vnops.c Extend kqueue down to the device layer. 2001-02-15 16:34:11 +00:00
vnode_if.pl
vnode_if.src Fixes to track snapshot copy-on-write checking in the specinfo 2001-03-07 07:09:55 +00:00