freebsd-nq/sys
John Baldwin dd75b0a90d Add an implementation of a generic sleep queue abstraction that is used
to queue threads sleeping on a wait channel similar to how turnstiles are
used to queue threads waiting for a lock.  This subsystem will be used as
the backend for sleep/wakeup and condition variables initially.  Eventually
it will also be used to replace the ithread-specific iwait thread
inhibitor.

Sleep queues are also not locked by sched_lock, so this splits sched_lock
up a bit further increasing concurrency within the scheduler.  Sleep queues
also natively support timeouts on sleeps and interruptible sleeps allowing
for the reduction of a lot of duplicated code between the sleep/wakeup and
condition variable implementations.  For more details on the sleep queue
implementation, check the comments in sys/sleepqueue.h and
kern/subr_sleepqueue.c.
2004-02-27 18:33:09 +00:00
..
alpha Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
amd64 Since we don't use PG_NX yet, don't turn on EFER_NXE quite yet. This needs 2004-02-25 23:12:39 +00:00
arm
boot For some reason crt0.o needs to be linked first for pxeboot(8) to 2004-02-27 14:10:09 +00:00
cam Check that periph is non-NULL before dereferencing it. 2004-02-22 01:14:54 +00:00
coda Device megapatch 5/6: 2004-02-21 21:32:15 +00:00
compat Regen (FWIW) 2004-02-21 23:38:58 +00:00
conf Tweak existing header and other build infrastructure to be able to build 2004-02-26 03:53:54 +00:00
contrib Tweak existing header and other build infrastructure to be able to build 2004-02-26 03:53:54 +00:00
crypto Fix a reentrancy issue in md5_calc(). 2004-01-27 18:57:21 +00:00
ddb Add DDB_NUMSYM option which in addition to the symbolic representation 2004-02-24 22:51:42 +00:00
dev Make mode setting with fdcontrol(8) stick. 2004-02-25 13:44:58 +00:00
fs Do not attempt to open NODEV 2004-02-24 09:59:35 +00:00
geom Even if we're sure that we can't be orphaned here, we have to define 2004-02-27 15:34:21 +00:00
gnu Enforce the file size limit in VOP_WRITE() as well as VOP_TRUNCATE(); 2004-02-19 09:06:06 +00:00
i4b Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
i386 Fixed the latest unsortings of CPU_ENABLE_*. 2004-02-24 04:18:07 +00:00
ia64 Do not pre-map the I/O port space. On the Intel Tiger 4 this conflicts 2004-02-22 02:10:48 +00:00
isa Make mode setting with fdcontrol(8) stick. 2004-02-25 13:44:58 +00:00
isofs/cd9660 Fix comment containing vop_readdir_args contents: a_cookies is really 2004-02-23 01:43:00 +00:00
kern Add an implementation of a generic sleep queue abstraction that is used 2004-02-27 18:33:09 +00:00
libkern Remove register keyword and constify tmp values. This fixes 2004-02-12 03:23:13 +00:00
modules Tweak existing header and other build infrastructure to be able to build 2004-02-26 03:53:54 +00:00
net Bring eventhandler callbacks for pf. 2004-02-26 04:27:55 +00:00
net80211 Change WI_RID_SCAN_RES compatibility interface to return the result after 2004-01-19 05:25:43 +00:00
netatalk Eliminate a duplicate free when deleting an interface address. This 2003-11-28 04:19:41 +00:00
netatm Don't remove the first mbuf in the chain if it got empty. 2004-02-21 12:55:07 +00:00
netgraph Unconst. Somebody didn't compile LINT. 2004-02-24 22:16:40 +00:00
netinet Bring eventhandler callbacks for pf. 2004-02-26 04:27:55 +00:00
netinet6 Bring eventhandler callbacks for pf. 2004-02-26 04:27:55 +00:00
netipsec Fix type in a sysctl. It used to be: net.key.prefered_oldsa 2004-02-16 17:09:53 +00:00
netipx Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netkey avoid duplicate free. 2004-01-25 17:18:12 +00:00
netnatm Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netncp Split the mlock() kernel code into two parts, mlock(), which unpacks 2004-02-26 00:27:04 +00:00
netsmb Split the mlock() kernel code into two parts, mlock(), which unpacks 2004-02-26 00:27:04 +00:00
nfs University of Michigan's Citi NFSv4 kernel client code. 2003-11-14 20:54:10 +00:00
nfs4client protect new cdevsw entries with "#if (__FreeBSD_version > 502102)" 2004-02-22 05:49:38 +00:00
nfsclient If mountnfs returns an error, it will have already freed nam; no need to 2004-02-22 01:17:47 +00:00
nfsserver Fix some becuase -> because typos. 2003-12-17 16:12:01 +00:00
opencrypto Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
pc98 Merged from sys/isa/fd.c revision 1.266. 2004-02-26 14:59:10 +00:00
pccard Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
pci Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
posix4 The sem_timedwait() and ksem_timedwait() functions both 2004-02-03 22:27:03 +00:00
powerpc Work-in-progress for the 'Kauai' ATA device in Mac notebooks. The 2004-02-12 09:17:16 +00:00
rpc Don't panic because of RPC proto mismatches. Whitespace cleanup. 2004-01-17 21:25:05 +00:00
security Forward declare struct proc, struct sockaddr, and struct thread, which 2004-02-26 20:44:50 +00:00
sparc64 Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
sys Add an implementation of a generic sleep queue abstraction that is used 2004-02-27 18:33:09 +00:00
tools Attempt to clean up the emu10k1-alsa.h stuff so that config doesn't 2004-02-05 22:51:16 +00:00
ufs A more accurate test in the new ufs_lock than that in 1.235. 2004-02-23 19:05:05 +00:00
vm Split the mlock() kernel code into two parts, mlock(), which unpacks 2004-02-26 00:27:04 +00:00
Makefile Replaced outdated comment. 2004-01-17 03:28:27 +00:00