[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260105175254.2708866-1-fangwu.lcc@antgroup.com>
Date: Tue, 06 Jan 2026 01:52:54 +0800
From: "刘聪聪(方勿)" <fangwu.lcc@...group.com>
To: edumazet@...gle.com,
ncardwell@...gle.com,
davem@...emloft.net,
kuba@...nel.org,
netdev@...r.kernel.org
Cc: <kuniyu@...gle.com>,
<dsahern@...nel.org>,
<pabeni@...hat.com>,
<horms@...nel.org>,
<linux-kernel@...r.kernel.org>,
"刘聪聪(方勿)" <fangwu.lcc@...group.com>
Subject: [PATCH net-next] tcp: fix error handling of tcp_retransmit_skb
The tcp_retransmit_timer() function checks if tcp_retransmit_skb()
returns a value greater than 0, but tcp_retransmit_skb() returns
0 on success and negative error codes on failure. This means the
error handling branch is never executed when retransmission fails.
Fix this by changing the condition to check for != 0 instead of > 0.
Signed-off-by: Liu Congcong <fangwu.lcc@...group.com>
---
net/ipv4/tcp_timer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c
index 160080c9021d..4fbb387e7e7b 100644
--- a/net/ipv4/tcp_timer.c
+++ b/net/ipv4/tcp_timer.c
@@ -624,7 +624,7 @@ void tcp_retransmit_timer(struct sock *sk)
tcp_enter_loss(sk);
tcp_update_rto_stats(sk);
- if (tcp_retransmit_skb(sk, tcp_rtx_queue_head(sk), 1) > 0) {
+ if (tcp_retransmit_skb(sk, tcp_rtx_queue_head(sk), 1)) {
/* Retransmission failed because of local congestion,
* Let senders fight for local resources conservatively.
*/
--
2.17.0
Powered by blists - more mailing lists