2005-09-30 02:24:29

by Chris Wright

[permalink] [raw]
Subject: [PATCH 09/10] [PATCH] tcp: set default congestion control correctly for incoming connections

-stable review patch. If anyone has any objections, please let us know.
------------------

Patch from Joel Sing to fix the default congestion control algorithm for incoming connections. If a new congestion control handler is added (via module),
it should become the default for new connections. Instead, the incoming
connections use reno. The cause is incorrect
initialisation causes the tcp_init_congestion_control() function to return
after the initial if test fails.

Signed-off-by: Stephen Hemminger <[email protected]>
Acked-by: "David S. Miller" <[email protected]>
Signed-off-by: Chris Wright <[email protected]>
---
net/ipv4/tcp_minisocks.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.13.y/net/ipv4/tcp_minisocks.c
===================================================================
--- linux-2.6.13.y.orig/net/ipv4/tcp_minisocks.c
+++ linux-2.6.13.y/net/ipv4/tcp_minisocks.c
@@ -774,7 +774,7 @@ struct sock *tcp_create_openreq_child(st
newtp->frto_counter = 0;
newtp->frto_highmark = 0;

- newtp->ca_ops = &tcp_reno;
+ newtp->ca_ops = &tcp_init_congestion_ops;

tcp_set_ca_state(newtp, TCP_CA_Open);
tcp_init_xmit_timers(newsk);

--