[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20181219215008.58185-1-edumazet@google.com>
Date: Wed, 19 Dec 2018 13:50:08 -0800
From: Eric Dumazet <edumazet@...gle.com>
To: "David S . Miller" <davem@...emloft.net>
Cc: netdev <netdev@...r.kernel.org>,
Eric Dumazet <edumazet@...gle.com>,
Soheil Hassas Yeganeh <soheil@...gle.com>,
Neal Cardwell <ncardwell@...gle.com>,
Yuchung Cheng <ycheng@...gle.com>,
Eric Dumazet <eric.dumazet@...il.com>
Subject: [PATCH net] tcp: clear tp->retrans_stamp in tcp_finish_connect()
tcp_connect() does :
tp->retrans_stamp = tcp_time_stamp(tp);
When 3WHS completes, we need to clear retrans_stamp otherwise
various things can break.
This bug became more visible after commit b701a99e431d ("tcp: Add
tcp_clamp_rto_to_user_timeout() helper to improve accuracy"), but
predates git history.
Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Acked-by: Soheil Hassas Yeganeh <soheil@...gle.com>
---
net/ipv4/tcp_input.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index a9d9555a973fed4e3562a57d1a2cdadfef40dae4..6c1c79a34ea0b694d0259b3f39ac1481b81dac5a 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -5680,6 +5680,7 @@ void tcp_finish_connect(struct sock *sk, struct sk_buff *skb)
* packet.
*/
tp->lsndtime = tcp_jiffies32;
+ tp->retrans_stamp = 0;
if (sock_flag(sk, SOCK_KEEPOPEN))
inet_csk_reset_keepalive_timer(sk, keepalive_time_when(tp));
--
2.20.0.405.gbc1bbc6f85-goog
Powered by blists - more mailing lists