freebsd-nq/sys
John Baldwin ccbdd9ee59 - Expand the set of atomic operations to optionally include memory barriers
in most of the atomic operations.  Now for these operations, you can
  use the normal atomic operation, you can use the operation with a read
  barrier, or you can use the operation with a write barrier.  The function
  names follow the same semantics used in the ia64 instruction set.  An
  atomic operation with a read barrier has the extra suffix 'acq', due to
  it having "acquire" semantics.  An atomic operation with a write barrier
  has the extra suffix 'rel'.  These suffixes are inserted between the
  name of the operation to perform and the typename.  For example, the
  atomic_add_int() function now has 3 variants:
  - atomic_add_int() - this is the same as the previous function
  - atomic_add_acq_int() - this function combines the add operation with a
    read memory barrier
  - atomic_add_rel_int() - this function combines the add operation with a
    write memory barrier
- Add 'ptr' to the list of types that we can perform atomic operations
  on.  This allows one to do atomic operations on uintptr_t's.  This is
  useful in the mutex code, for example, because the actual mutex lock is
  a pointer.
- Add two new operations for doing loads and stores with memory barriers.
  The new load operations use a read barrier before the load, and the
  new store operations use a write barrier after the load.  For example,
  atomic_load_acq_int() will atomically load an integer as well as
  enforcing a read barrier.
2000-10-20 07:00:48 +00:00
..
alpha - Expand the set of atomic operations to optionally include memory barriers 2000-10-20 07:00:48 +00:00
amd64 - Expand the set of atomic operations to optionally include memory barriers 2000-10-20 07:00:48 +00:00
boot Convert from the Alpha compontents to PowerPC ones. 2000-10-16 19:58:32 +00:00
cam Add the quirk entry for the Sony Memory Stick Adapter. 2000-10-20 00:53:30 +00:00
coda Forward-declare struct mbuf so that this file is less self-insufficient 2000-10-05 11:58:22 +00:00
compat A start at an implemention of linux_rt_sendsig & linux_rt_sigreturn 2000-10-17 00:00:20 +00:00
compile
conf NEWCARD/Cardbus - 2000-10-19 08:34:32 +00:00
contrib/dev Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
crypto Fix broken const'ness in declaration of sha1_loop(). 2000-10-09 18:49:14 +00:00
ddb Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
dev Bugfix: The data is not stored only in the first cblock, calculate the 2000-10-20 00:35:52 +00:00
fs Fix nullfs breakage caused by incomplete migration of v_interlock from 2000-10-15 06:25:42 +00:00
geom Avoid the modules madness I inadvertently introduced by making the 2000-09-02 19:17:34 +00:00
gnu Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
i4b Add a debug flag bit for a new driver. 2000-10-18 08:39:24 +00:00
i386 - Expand the set of atomic operations to optionally include memory barriers 2000-10-20 07:00:48 +00:00
ia64 - Expand the set of atomic operations to optionally include memory barriers 2000-10-20 07:00:48 +00:00
isa Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
isofs/cd9660 Blow away the v_specmountpoint define, replacing it with what it was 2000-10-09 17:31:39 +00:00
kern Reparent a kernel thread to init during kthread_exit() so that the zombie 2000-10-19 19:53:44 +00:00
libkern Fix compilation of profiled kernels by including <machine/lock.h> 2000-10-14 08:34:27 +00:00
miscfs Fix nullfs breakage caused by incomplete migration of v_interlock from 2000-10-15 06:25:42 +00:00
modules After some complaints about the dir names, the random device is 2000-10-14 10:59:56 +00:00
msdosfs Blow away the v_specmountpoint define, replacing it with what it was 2000-10-09 17:31:39 +00:00
net Augment the 'ifaddr' structure with a 'struct if_data' to keep 2000-10-19 23:15:54 +00:00
netatalk Just need to pass the address family to if_simloop(), not the whole sockaddr. 2000-05-24 21:16:56 +00:00
netatm Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
netgraph Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
netinet Augment the 'ifaddr' structure with a 'struct if_data' to keep 2000-10-19 23:15:54 +00:00
netinet6 Augment the 'ifaddr' structure with a 'struct if_data' to keep 2000-10-19 23:15:54 +00:00
netipx Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
netkey make sure we have IV that is random enough. memory allocator on 2000-08-28 08:24:46 +00:00
netnatm Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netncp Convert lockmgr locks from using simple locks to using mutexes. 2000-10-04 01:29:17 +00:00
netns Clean up some loose ends in the network code, including the X.25 and ISO 2000-02-13 03:32:07 +00:00
nfs Make nfs PDIRUNLOCK aware. Now it is possible to use nullfs mounts on top 2000-10-15 08:06:32 +00:00
nfsclient Make nfs PDIRUNLOCK aware. Now it is possible to use nullfs mounts on top 2000-10-15 08:06:32 +00:00
nfsserver Major update to the way synchronization is done in the kernel. Highlights 2000-09-07 01:33:02 +00:00
ntfs Blow away the v_specmountpoint define, replacing it with what it was 2000-10-09 17:31:39 +00:00
nwfs Convert lockmgr locks from using simple locks to using mutexes. 2000-10-04 01:29:17 +00:00
pc98 Converted da' and wd' into rda' and rwd', respectively. 2000-10-18 15:28:10 +00:00
pccard Remove unneeded #include <machine/clock.h> 2000-10-15 14:19:01 +00:00
pci NEWCARD/Cardbus - 2000-10-19 08:34:32 +00:00
posix4 Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
powerpc Move DELAY() from <machine/clock.h> to <sys/systm.h> 2000-10-15 09:51:49 +00:00
rpc
sys Axe the barrier_{read,write,rw}() helper functions as this method of 2000-10-20 06:45:48 +00:00
tools remove crufty exec stuff, perl is in the base system 2000-06-27 19:09:55 +00:00
ufs o Introduce new VOP_ACCESS() flag VADMIN, allowing file systems to perform 2000-10-19 07:53:59 +00:00
vm Implement write combining for crashdumps. This is useful when 2000-10-17 10:05:49 +00:00
Makefile I should know better than to touch this without testing a 'make release' 2000-08-24 18:53:09 +00:00