freebsd-nq/sys/modules
Jonathan T. Looney bd79708dbf In the TCP stack, the hhook(9) framework provides hooks for kernel modules
to add actions that run when a TCP frame is sent or received on a TCP
session in the ESTABLISHED state. In the base tree, this functionality is
only used for the h_ertt module, which is used by the cc_cdg, cc_chd, cc_hd,
and cc_vegas congestion control modules.

Presently, we incur overhead to check for hooks each time a TCP frame is
sent or received on an ESTABLISHED TCP session.

This change adds a new compile-time option (TCP_HHOOK) to determine whether
to include the hhook(9) framework for TCP. To retain backwards
compatibility, I added the TCP_HHOOK option to every configuration file that
already defined "options INET". (Therefore, this patch introduces no
functional change. In order to see a functional difference, you need to
compile a custom kernel without the TCP_HHOOK option.) This change will
allow users to easily exclude this functionality from their kernel, should
they wish to do so.

Note that any users who use a custom kernel configuration and use one of the
congestion control modules listed above will need to add the TCP_HHOOK
option to their kernel configuration.

Reviewed by:	rrs, lstewart, hiren (previous version), sjg (makefiles only)
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D8185
2016-10-12 02:16:42 +00:00
..
3dfx
3dfx_linux
aac
aacraid
accf_data
accf_dns
accf_http
acl_nfs4
acl_posix1e
acpi
ae
aesni
age
agp
aha
ahb
ahci
aic
aic7xxx
alc
ale
alq
am335x_dmtpps
amdsbwd
amdtemp
amr
an
aout
apm
ar71xx
arcmsr
arcnet
asmc
ata
ath
ath_ahb
ath_pci
autofs
auxio
bce
bfe
bge
bhnd bhnd(4): Implement common API for IOST/IOCTL register access and core reset 2016-09-24 04:08:16 +00:00
bios
bktr
bm
bridgestp
bwi
bwn Properly include the 802.11n PHY support files when the BWM_GPL_PHY 2016-10-11 22:32:12 +00:00
bwn_pci
bxe
cam
canbepm
canbus
cardbus
carp
cas
cbb
cc In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
cd9660
cd9660_iconv
ce
cfi
ciss
cloudabi
cloudabi32 Make the cloudabi32 kernel module available on ARMv6. 2016-09-22 12:08:26 +00:00
cloudabi64 Use both the MACHINE and MACHINE_CPUARCH directories for finding sources. 2016-08-29 07:48:35 +00:00
cm
cmx
coff
coretemp
cp
cpsw
cpuctl
cpufreq
crypto
cryptodev
cs
ct
ctau
ctl
cuse
cx
cxgb
cxgbe cxgbe(4): Attach to cards with the Terminator 6 ASIC. T6 cards will 2016-09-16 00:08:37 +00:00
dc
dcons
dcons_crom
de
dpms
dpt
drm
drm2
dtb Add CHIP dts into the build 2016-10-10 04:53:15 +00:00
dtrace
dummynet
ed
efirt Create /dev/efidev to provide an ioctl interface to 2016-10-11 22:24:30 +00:00
elink
em
en
ep
epic
esp
et
evdev Modularize evdev 2016-10-02 03:20:31 +00:00
ex
exca
ext2fs
fatm
fdc
fdescfs
fe
filemon
firewire
firmware
fuse
fxp
gem
geom
glxiic
glxsb
gpio
hatm
hifn
hme
hpt27xx
hptiop
hptmv
hptnr
hptrr
hwpmc
hyperv hyperv/vmbus: Add missing vmbus_if.c to module build. 2016-09-30 06:49:39 +00:00
i2c
ibcore
ibcs2
ichwd
ida
if_bridge
if_disc
if_edsc
if_enc
if_epair
if_gif
if_gre
if_lagg
if_me
if_ndis
if_stf
if_tap
if_tun
if_vlan
if_vxlan
igb
iir
imgact_binmisc
io
ioat
ip6_mroute_mod
ip_mroute_mod
ipdivert
ipfilter
ipfw
ipfw_nat
ipfw_nat64
ipfw_nptv6
ipmi
ipoib
ips
ipw
ipwfw
isci
iscsi
iscsi_initiator
iser
isp
ispfw
iwi
iwifw
iwm
iwmfw
iwn
iwnfw
ix
ixgb
ixl
ixlv
ixv
jme
joy
kbdmux
kgssapi
kgssapi_krb5
khelp In the TCP stack, the hhook(9) framework provides hooks for kernel modules 2016-10-12 02:16:42 +00:00
krpc
ksyms
le
lge
libalias
libiconv
libmbpool
libmchain
linprocfs
linsysfs
linux
linux64
linux_common
linuxkpi
lmc
lpt
mac_biba
mac_bsdextended
mac_ifoff
mac_lomac
mac_mls
mac_none
mac_partition
mac_portacl
mac_seeotheruids
mac_stub
mac_test
malo
md
mdio
mem
mfi
mii
mlx
mlx4 Move the ConnectX-3 and ConnectX-2 driver from sys/ofed into sys/dev/mlx4 2016-09-30 08:23:06 +00:00
mlx4en Move the ConnectX-3 and ConnectX-2 driver from sys/ofed into sys/dev/mlx4 2016-09-30 08:23:06 +00:00
mlx4ib Move the ConnectX-3 and ConnectX-2 driver from sys/ofed into sys/dev/mlx4 2016-09-30 08:23:06 +00:00
mlx5
mlx5en
mly
mmc
mmcsd
mpr
mps
mpt
mqueue
mrsas
msdosfs
msdosfs_iconv
mse
msk
mthca
mvs
mwl
mwlfw
mxge
my
nand
nandfs
nandsim
ncr
nctgpio
ncv
ndis
netfpga10g
netgraph
netmap
nfe
nfscl
nfscommon
nfsd
nfslock
nfslockd
nfssvc
nge
nmdm
nsp
ntb
nullfs
nvd
nvme
nvram
nxge
oce
opensolaris Move implementations of uread() and uwrite() to the illumos compat layer. 2016-09-24 21:40:14 +00:00
otus
otusfw
ow
padlock
padlock_rng
patm
pccard
pcfclock
pcn
pf
pflog
pfsync
plip
pmc
pms
powermac_nvram
ppbus
ppc
ppi
pps
procfs
proto
pseudofs
pst
pty
puc
qlxgb
qlxgbe
qlxge
ral
ralfw
random_fortuna
random_other
random_yarrow
rc
rc4
rccgpio
rdma
rdrand_rng
re
rl
rndtest
rp
rpi_ft5406 Add rpi_ft5406 module and add it to extra modules in Raspberry Pi configs 2016-10-03 01:08:34 +00:00
rtwn
rtwnfw
s3
safe
sbni
scc
scsi_low
sdhci
sdhci_pci
sem
send
sf
sfxge
sge
siba_bwn
siftr
siis
sio
sis
sk
smbfs
sn
snc
snp
sound
speaker
splash
sppp
ste
stg
stge
streams
svr4
sym
syscons
sysvipc
tcp/fastpath
tests
ti
tl
tmpfs
toecore
tpm
trm
tsec
twa
twe
tws
tx
txp
uart
ubsec
ubser
uchcom
ucycom
udf
udf_iconv
ufs
uinput Modularize evdev 2016-10-02 03:20:31 +00:00
unionfs
urtwn
urtwnfw
usb Add evdev support to ums(4) 2016-09-21 18:52:03 +00:00
utopia
vesa
vge
viawd
videomode
virtio
vkbd
vmm
vmware
vnic
vpo
vr
vte
vx
vxge
wb
wbwd
wi
wlan
wlan_acl
wlan_amrr
wlan_ccmp
wlan_rssadapt
wlan_tkip
wlan_wep
wlan_xauth
wpi
wpifw
wtap
x86bios
xe
xl
zfs
zlib
Makefile Modularize evdev 2016-10-02 03:20:31 +00:00
Makefile.inc