[TCP]: Set default congestion control when no sysctl.
Stephen Hemminger [Wed, 1 Nov 2006 01:31:33 +0000 (17:31 -0800)]
The setting of the default congestion control was buried in
the sysctl code so it would not be done properly if SYSCTL was
not enabled.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

net/ipv4/sysctl_net_ipv4.c
net/ipv4/tcp_cong.c

index e82a5be..15061b3 100644 (file)
@@ -129,13 +129,6 @@ static int sysctl_tcp_congestion_control(ctl_table *table, int __user *name,
        return ret;
 }
 
-static int __init tcp_congestion_default(void)
-{
-       return tcp_set_default_congestion_control(CONFIG_DEFAULT_TCP_CONG);
-}
-
-late_initcall(tcp_congestion_default);
-
 ctl_table ipv4_table[] = {
         {
                .ctl_name       = NET_IPV4_TCP_TIMESTAMPS,
index af0aca1..1e2982f 100644 (file)
@@ -131,6 +131,14 @@ int tcp_set_default_congestion_control(const char *name)
        return ret;
 }
 
+/* Set default value from kernel configuration at bootup */
+static int __init tcp_congestion_default(void)
+{
+       return tcp_set_default_congestion_control(CONFIG_DEFAULT_TCP_CONG);
+}
+late_initcall(tcp_congestion_default);
+
+
 /* Get current default congestion control */
 void tcp_get_default_congestion_control(char *name)
 {