[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1727999090-19845-1-git-send-email-guoxin0309@gmail.com>
Date: Fri, 4 Oct 2024 07:44:50 +0800
From: "xin.guo" <guoxin0309@...il.com>
To: edumazet@...gle.com
Cc: netdev@...r.kernel.org,
"xin.guo" <guoxin0309@...il.com>
Subject: [PATCH net-next v2] tcp: remove unnecessary update for tp->write_seq in tcp_connect() Commit 783237e8daf13("net-tcp: Fast Open client - sending SYN-data") introduces tcp_connect_queue_skb() and it would overwrite tcp->write_seq, so it is no need to update tp->write_seq before invoking tcp_connect_queue_skb()
From: "xin.guo" <guoxin0309@...il.com>
Signed-off-by: xin.guo <guoxin0309@...il.com>
---
net/ipv4/tcp_output.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 4fd746b..3265f34 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -4133,8 +4133,11 @@ int tcp_connect(struct sock *sk)
buff = tcp_stream_alloc_skb(sk, sk->sk_allocation, true);
if (unlikely(!buff))
return -ENOBUFS;
-
- tcp_init_nondata_skb(buff, tp->write_seq++, TCPHDR_SYN);
+
+ /*SYN eats a sequence byte, write_seq updated by
+ *tcp_connect_queue_skb()
+ */
+ tcp_init_nondata_skb(buff, tp->write_seq, TCPHDR_SYN);
tcp_mstamp_refresh(tp);
tp->retrans_stamp = tcp_time_stamp_ts(tp);
tcp_connect_queue_skb(sk, buff);
--
1.8.3.1
Powered by blists - more mailing lists