freebsd-dev/sys
Scott Long ae54359608 Bring aac out from under Giant:
- the mutex aac_io_lock protects the main codepaths which handle queues and
  hardware registers.  Only one acquire/release is done in the top-half and
  the taskqueue.  This mutex also applies to the userland command path and
  CAM data path.
- Move the taskqueue to the new Giant-free version.
- Register the disk device with DISKFLAG_NOGIANT so the top-half processing
  runs without Giant.
- Move the dynamic command allocator to the worker thread to avoid locking
  issues with bus_dmamem_alloc().

This gives about 20% improvement in most of my benchmarks.
2003-02-26 04:46:21 +00:00
..
alpha Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
amd64 Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
arm MB_LEN_MAX is not MD, move it to the MI limits.h. 2002-12-22 06:38:45 +00:00
boot Fixed CLEANFILES. 2003-02-25 15:41:49 +00:00
cam NO_GEOM cleanup: 2003-02-25 22:06:21 +00:00
coda Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
compat Add M_WAITOK 2003-02-20 11:24:55 +00:00
conf Retire the aacd major (151) now that it's no longer needed. 2003-02-26 02:52:14 +00:00
contrib NO_GEOM cleanup: 2003-02-22 09:32:57 +00:00
crypto Remove some unnecessary casts. 2003-01-25 22:41:22 +00:00
ddb - Split the struct kse into struct upcall and struct kse. struct kse will 2003-02-17 05:14:26 +00:00
dev Bring aac out from under Giant: 2003-02-26 04:46:21 +00:00
fs Do not call smbfs_attr_cacheremove() in the EXDEV case in smbfs_rename(). 2003-02-19 11:54:35 +00:00
geom Cleanup of the d_mmap_t interface. 2003-02-25 03:21:22 +00:00
gnu - Add an interlock argument to BUF_LOCK and BUF_TIMELOCK. 2003-02-25 03:37:48 +00:00
i4b Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
i386 Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
ia64 Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
isa Cleanup of the d_mmap_t interface. 2003-02-25 03:21:22 +00:00
isofs/cd9660 Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
kern Introduce a new taskqueue that runs completely free of Giant, and in 2003-02-26 03:15:42 +00:00
libkern Further GC of M_STRING, missed previously. 2003-02-26 01:00:29 +00:00
modules Introduce a new taskqueue that runs completely free of Giant, and in 2003-02-26 03:15:42 +00:00
net Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netatalk Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netatm There is no reason to be cute with ntohl(). Just call it directly rather 2003-02-23 22:26:39 +00:00
netgraph Introduce a new taskqueue that runs completely free of Giant, and in 2003-02-26 03:15:42 +00:00
netinet When generating a TCP response to a connection, not only test if the 2003-02-25 14:08:41 +00:00
netinet6 Fix another case for timewait. 2003-02-24 02:06:50 +00:00
netipsec Update to work with the new timewait state. 2003-02-24 02:06:02 +00:00
netipx Allocate struct ipx_ifaddrs with an initial reference count of 1, not 0. 2003-02-25 15:10:23 +00:00
netkey Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netnatm Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netncp Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netns Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
netsmb Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
nfs Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
nfsclient - The interlock was not being droped in nfs_flush() if the first part of 2003-02-26 00:24:19 +00:00
nfsserver - Add an interlock argument to BUF_LOCK and BUF_TIMELOCK. 2003-02-25 03:37:48 +00:00
opencrypto o add a CRYPTO_F_CBIMM flag to symmetric ops to indicate the callback 2003-02-23 07:25:48 +00:00
pc98 Move most everything back to a MI NOTES, and use "nodevice" in MD NOTES 2003-02-25 20:59:23 +00:00
pccard Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
pci Cleanup of the d_mmap_t interface. 2003-02-25 03:21:22 +00:00
posix4 Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
powerpc Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
rpc
security Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
sparc64 Correctly set BUS_SPACE_MAXSIZE in all the busdma backends. 2003-02-26 02:16:06 +00:00
sys Introduce a new taskqueue that runs completely free of Giant, and in 2003-02-26 03:15:42 +00:00
tools Remove miidevs.h and generate it from miidevs at compile time. 2003-01-19 02:59:34 +00:00
ufs Change the field used to test whether the superblock has been updated 2003-02-25 23:21:08 +00:00
vm Fuse two #ifdefs with identical conditions. 2003-02-25 06:46:08 +00:00
Makefile