freebsd-dev/sys
Jeff Roberson 5f8cd1c0bf Add a generic Proportional Integral Derivative (PID) controller algorithm and
use it to regulate page daemon output.

This provides much smoother and more responsive page daemon output, anticipating
demand and avoiding pageout stalls by increasing the number of pages to match
the workload.  This is a reimplementation of work done by myself and mlaier at
Isilon.

Reviewed by:	bsdimp
Tested by:	pho
Sponsored by:	Netflix, Dell/EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D14402
2018-02-23 22:51:51 +00:00
..
amd64 Remove unused error return from API that cannot fail 2018-02-23 20:15:19 +00:00
arm Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
arm64 Remove unused error return from API that cannot fail 2018-02-23 20:15:19 +00:00
bsm sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
cam Use bool instead of int for predicate functions relating to work 2018-02-23 16:06:54 +00:00
cddl another rework of getzfsvfs / getzfsvfs_impl code 2018-02-22 13:06:27 +00:00
compat Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
conf Add a generic Proportional Integral Derivative (PID) controller algorithm and 2018-02-23 22:51:51 +00:00
contrib Define CK_MD_TSO for the relevant arches (i386, amd64 and sparc64). 2018-02-16 17:50:06 +00:00
crypto Remove unused error return from API that cannot fail 2018-02-23 20:15:19 +00:00
ddb Implement 'domainset', a cpuset based NUMA policy mechanism. This allows 2018-01-12 22:48:23 +00:00
dev Remove unused error return from API that cannot fail 2018-02-23 20:15:19 +00:00
dts Add a skeleton Clock Manager for RPi2/3, and use that from pwm 2018-01-22 07:10:30 +00:00
fs {ext2|ufs}_readdir: Avoid setting negative ncookies. 2018-02-06 22:38:19 +00:00
gdb sys/gdb: further adoption of SPDX licensing ID tags. 2017-11-27 15:16:59 +00:00
geom Fix a memory leak introduced in r328426. 2018-02-16 15:41:03 +00:00
gnu bwn(4): txpid2g/txpid5g[lh] are not defined after sromrev 7; the default 2018-02-13 17:43:54 +00:00
i386 Remove unused error return from API that cannot fail 2018-02-23 20:15:19 +00:00
isa Add ISA PNP tables to ISA drivers. Fix a few incidental comments. 2018-01-29 00:22:30 +00:00
kern Add a generic Proportional Integral Derivative (PID) controller algorithm and 2018-02-23 22:51:51 +00:00
kgssapi kgssapi: Remove trivial deadcode 2018-02-14 00:12:03 +00:00
libkern libkern: use nul for terminating char rather than 0 2018-02-13 19:17:48 +00:00
mips Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
modules jedec_dimm(4): report asset info and temperatures for DDR3 and DDR4 DIMMs 2018-02-22 23:18:46 +00:00
net Allow route change requests to not specify the gateway. 2018-02-21 19:13:23 +00:00
net80211 net80211: sanitize input for ieee80211_output() 2017-12-30 00:40:34 +00:00
netgraph Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
netinet Reinitialize IP header length after checksum calculation. It is used 2018-02-10 10:13:17 +00:00
netinet6 Update the MTU in affected routes when IPv6 RA changes the MTU 2018-02-12 19:49:20 +00:00
netipsec Remove unused variables and sysctl declaration. 2018-02-19 12:20:51 +00:00
netpfil Remove duplicate #include <netinet/ip_var.h>. 2018-02-07 19:12:05 +00:00
netsmb Unsign some values related to allocation. 2018-01-22 02:08:10 +00:00
nfs Modernize nfssvc(2) registartion. 2018-02-08 20:09:42 +00:00
nfsclient style: Remove remaining deprecated MALLOC/FREE macros 2018-01-25 22:25:13 +00:00
nfsserver sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
nlm Use syscall_helper_register() to register syscalls and initialize though 2018-02-10 01:09:22 +00:00
ofed Import the mthca kernel side infiniband driver from Linux 4.9 and fix 2018-02-13 17:04:34 +00:00
opencrypto Move per-operation data out of the csession structure. 2018-01-26 23:21:50 +00:00
powerpc powerpc64: add NVMe to GENERIC64 2018-02-23 07:43:52 +00:00
riscv Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
rpc Do pass removing some write-only variables from the kernel. 2017-12-25 04:48:39 +00:00
security Reduce duplication in __mac_*_(file|link)(2) implementation. 2018-02-15 18:57:22 +00:00
sparc64 Do not include float interfaces when using libsa. 2018-02-23 04:04:25 +00:00
sys Add a generic Proportional Integral Derivative (PID) controller algorithm and 2018-02-23 22:51:51 +00:00
teken sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
tests
tools Avoid using \$. It's an unknown escape sequence. Some awks warn about 2018-01-28 05:13:08 +00:00
ufs Refactor fix in r329600 to do its check once in readsuper() rather 2018-02-21 19:56:19 +00:00
vm Add a generic Proportional Integral Derivative (PID) controller algorithm and 2018-02-23 22:51:51 +00:00
x86 Correct pseudo misspelling in sys/ comments 2018-02-23 18:15:50 +00:00
xdr sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
xen sys: general adoption of SPDX licensing ID tags. 2017-11-27 15:23:17 +00:00
Makefile Move sys/boot to stand. Fix all references to new location 2017-11-14 23:02:19 +00:00