From: David S. Miller Date: Wed, 9 Jul 2003 13:23:04 +0000 (-0700) Subject: [TCP]: Eliminate spurious CWND restart on every new connection. X-Git-Tag: v2.5.75~12^2^2~2^2~3 X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=d5a61fa4294219ff51533922a84dfb276bb019c8;p=history.git [TCP]: Eliminate spurious CWND restart on every new connection. --- diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index f629bffd0e62..a287499dff5f 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -3698,6 +3698,12 @@ static int tcp_rcv_synsent_state_process(struct sock *sk, struct sk_buff *skb, tp->af_specific->rebuild_header(sk); tcp_init_metrics(sk); + + /* Prevent spurious tcp_cwnd_restart() on first data + * packet. + */ + tp->lsndtime = tcp_time_stamp; + tcp_init_buffer_space(sk); if (sock_flag(sk, SOCK_KEEPOPEN)) @@ -3969,6 +3975,12 @@ int tcp_rcv_state_process(struct sock *sk, struct sk_buff *skb, tp->af_specific->rebuild_header(sk); tcp_init_metrics(sk); + + /* Prevent spurious tcp_cwnd_restart() on + * first data packet. + */ + tp->lsndtime = tcp_time_stamp; + tcp_initialize_rcv_mss(sk); tcp_init_buffer_space(sk); tcp_fast_path_on(tp);