1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-23 11:18:54 +00:00
freebsd/sys
Poul-Henning Kamp f0e185d705 Implement a bio-taskqueue to reduce number of context switches in
disk I/O processing.

        The intent is that the disk driver in its hardware interrupt
        routine will simply schedule the bio on the task queue with
        a routine to finish off whatever needs done.

        The g_up thread will then schedule this routine, the likely
        outcome of which is a biodone() which queues the bio on
        g_up's regular queue where it will be picked up and processed.

        Compared to the using the regular taskqueue, this saves one
        contextswitch.

Change our scheduling of the g_up and g_down queues to be water-tight,
at the cost of breaking the userland regression test-shims.

Input and ideas from:   scottl
2003-02-11 22:30:26 +00:00
..
alpha Implement fpclassify(): 2003-02-08 20:37:55 +00:00
amd64 Switch to using the TSC code in i386/i386/tsc.c. 2003-02-11 11:43:25 +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 s/hw.pci_allow_unsupported_io_range/hw.pci.allow_unsupported_io_range/ 2003-02-08 19:39:01 +00:00
cam Announce our ability to do DFLTPHYS sized transfers. 2003-02-11 21:30:28 +00:00
coda Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
compat 1) Linux_sendto was trashing the BSD sockaddr it put in the stackgap, 2003-02-08 09:26:31 +00:00
conf Sort. 2003-02-11 13:19:01 +00:00
contrib Mark our struct disk with DISKFLAG_CANDELETE instead of the cdevsw with 2003-02-11 12:35:01 +00:00
crypto Remove some unnecessary casts. 2003-01-25 22:41:22 +00:00
ddb Reversion of commit by Davidxu plus fixes since applied. 2003-02-01 12:17:09 +00:00
dev Announce our ability to do MAXPHYS transfers. 2003-02-11 21:29:53 +00:00
fs Use the SI_CANDELETE flag on the dev_t rather than the D_CANFREE flag 2003-02-11 12:49:58 +00:00
geom Implement a bio-taskqueue to reduce number of context switches in 2003-02-11 22:30:26 +00:00
gnu - Use the new vop_stdfsync instead of recreating our own. 2003-02-09 12:28:51 +00:00
i4b Fix another typo in a comment which I noticed while doing the MFC. 2003-02-06 14:52:47 +00:00
i386 Switch to using the TSC code in i386/i386/tsc.c. 2003-02-11 11:43:25 +00:00
ia64 Implement fpclassify(): 2003-02-08 20:37:55 +00:00
isa Switch to using the TSC code in i386/i386/tsc.c. 2003-02-11 11:43:25 +00:00
isofs/cd9660 Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
kern Don't lock FILEDESC under PROC. 2003-02-11 07:20:52 +00:00
libkern Improve a comment and undo a bogus s/a/an/ in a comment. An asm guru 2003-02-11 20:15:11 +00:00
modules pci_if.h is not needed. 2003-02-07 15:05:37 +00:00
net PFIL_HOOKS optimization: check if at least one hook is present before 2003-02-11 21:48:20 +00:00
netatalk Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
netatm Band-XXX-aid an easy to provoke panic. 2003-01-28 12:10:11 +00:00
netgraph Take the rc4 code out of ng_mppc module so we don't fail to load when 2003-02-05 19:11:11 +00:00
netinet s/IPSSEC/IPSEC/ 2003-02-11 10:51:56 +00:00
netinet6 Consolidate MIN/MAX macros into one place (param.h). 2003-02-02 13:17:30 +00:00
netipsec Comment out srandom(): 2003-02-05 15:32:24 +00:00
netipx add forgotten IFA_LOCK_INIT 2003-01-23 23:36:45 +00:00
netkey Comment out srandom(): 2003-02-05 15:32:24 +00:00
netnatm Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
netncp Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
netns Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
netsmb Pass a minor number instead of a unit number to make_dev(). 2003-02-07 23:29:57 +00:00
nfs Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
nfsclient Provide a sysctl to allow defaulting of the connectionless (-c) feature 2003-01-22 19:57:31 +00:00
nfsserver Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
opencrypto Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
pc98 Switch to use the TSC code i386/i386/tsc.c 2003-02-11 11:43:58 +00:00
pccard Consolidate MIN/MAX macros into one place (param.h). 2003-02-02 13:17:30 +00:00
pci Clean up exit path from rl_attach() to remove multiple returns 2003-02-09 22:32:50 +00:00
posix4 Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0. 2003-01-21 08:56:16 +00:00
powerpc Implement fpclassify(): 2003-02-08 20:37:55 +00:00
rpc
security Implement mpo_check_kld_load() and mpo_check_kld_unload() for the Biba 2003-02-04 22:38:33 +00:00
sparc64 Implement fpclassify(): 2003-02-08 20:37:55 +00:00
sys Implement a bio-taskqueue to reduce number of context switches in 2003-02-11 22:30:26 +00:00
tools Remove miidevs.h and generate it from miidevs at compile time. 2003-01-19 02:59:34 +00:00
ufs - Cleanup unlocked accesses to buf flags by introducing a new b_vflag member 2003-02-09 11:28:35 +00:00
vm Add a comment describing how pagedaemon_wakeup() should be used and 2003-02-09 20:40:36 +00:00
Makefile