[TCP]: Do not present confusing congestion control options by default.
authorDavid S. Miller <davem@davemloft.net>
Sat, 25 Jun 2005 01:07:51 +0000 (18:07 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 25 Jun 2005 01:07:51 +0000 (18:07 -0700)
Create TCP_CONG_ADVANCED option, akin to IP_ADVANCED_ROUTER, which
when disabled will bypass all of the congestion control Kconfig
options and leave the user with a safe default.

That safe default is currently BIC-TCP with new Reno as a fallback.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/Kconfig

index 7bcfb84126d1527b488aa1efd96fa297729c4b52..3470834331207da5c008f45a09291dd924927e3c 100644 (file)
@@ -445,9 +445,22 @@ config IP_TCPDIAG
 config IP_TCPDIAG_IPV6
        def_bool (IP_TCPDIAG=y && IPV6=y) || (IP_TCPDIAG=m && IPV6)
 
+config TCP_CONG_ADVANCED
+       bool "TCP: advanced congestion control"
+       depends on INET
+       default y
+       ---help---
+         Support for selection of various TCP congestion control
+         modules.
+
+         Nearly all users can safely say no here, and a safe default
+         selection will be made (BIC-TCP with new Reno as a fallback).
+
+         If unsure, say N.
+
 # TCP Reno is builtin (required as fallback)
 menu "TCP congestion control"
-       depends on INET
+       depends on TCP_CONG_ADVANCED
 
 config TCP_CONG_BIC
        tristate "Binary Increase Congestion (BIC) control"
@@ -535,5 +548,10 @@ config TCP_CONG_SCALABLE
 
 endmenu
 
+config TCP_CONG_BIC
+       boolean
+       depends on !TCP_CONG_ADVANCED
+       default y
+
 source "net/ipv4/ipvs/Kconfig"