diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2005-06-23 15:19:55 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-06-23 15:19:55 -0400 |
commit | 317a76f9a44b437d6301718f4e5d08bd93f98da7 (patch) | |
tree | caeba9839dee264f59b035b81c3d13d6c61b638e /net/ipv4/tcp_ipv4.c | |
parent | a8ad86f2dc46356f87be1327dabc18bdbda32f50 (diff) |
[TCP]: Add pluggable congestion control algorithm infrastructure.
Allow TCP to have multiple pluggable congestion control algorithms.
Algorithms are defined by a set of operations and can be built in
or modules. The legacy "new RENO" algorithm is used as a starting
point and fallback.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r-- | net/ipv4/tcp_ipv4.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 2d41d5d6ad19..9122814c13ad 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
@@ -2048,6 +2048,7 @@ static int tcp_v4_init_sock(struct sock *sk) | |||
2048 | tp->mss_cache_std = tp->mss_cache = 536; | 2048 | tp->mss_cache_std = tp->mss_cache = 536; |
2049 | 2049 | ||
2050 | tp->reordering = sysctl_tcp_reordering; | 2050 | tp->reordering = sysctl_tcp_reordering; |
2051 | tp->ca_ops = &tcp_reno; | ||
2051 | 2052 | ||
2052 | sk->sk_state = TCP_CLOSE; | 2053 | sk->sk_state = TCP_CLOSE; |
2053 | 2054 | ||
@@ -2070,6 +2071,8 @@ int tcp_v4_destroy_sock(struct sock *sk) | |||
2070 | 2071 | ||
2071 | tcp_clear_xmit_timers(sk); | 2072 | tcp_clear_xmit_timers(sk); |
2072 | 2073 | ||
2074 | tcp_cleanup_congestion_control(tp); | ||
2075 | |||
2073 | /* Cleanup up the write buffer. */ | 2076 | /* Cleanup up the write buffer. */ |
2074 | sk_stream_writequeue_purge(sk); | 2077 | sk_stream_writequeue_purge(sk); |
2075 | 2078 | ||