]> git.baikalelectronics.ru Git - kernel.git/commitdiff
tcp: move tcp_mark_skb_lost
authorYuchung Cheng <ycheng@google.com>
Fri, 25 Sep 2020 17:04:29 +0000 (10:04 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 26 Sep 2020 00:17:14 +0000 (17:17 -0700)
A pure refactor to move tcp_mark_skb_lost to tcp_input.c to prepare
for the later loss marking consolidation.

Signed-off-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_input.c
net/ipv4/tcp_recovery.c

index f9f4321d18b3bb0c5c64379f6a09922cdf5f193c..1cf4fcf8f41bf260a3be170add931da5156ba812 100644 (file)
@@ -1016,6 +1016,20 @@ static void tcp_verify_retransmit_hint(struct tcp_sock *tp, struct sk_buff *skb)
                tp->retransmit_skb_hint = skb;
 }
 
+void tcp_mark_skb_lost(struct sock *sk, struct sk_buff *skb)
+{
+       struct tcp_sock *tp = tcp_sk(sk);
+
+       tcp_skb_mark_lost_uncond_verify(tp, skb);
+       if (TCP_SKB_CB(skb)->sacked & TCPCB_SACKED_RETRANS) {
+               /* Account for retransmits that are lost again */
+               TCP_SKB_CB(skb)->sacked &= ~TCPCB_SACKED_RETRANS;
+               tp->retrans_out -= tcp_skb_pcount(skb);
+               NET_ADD_STATS(sock_net(sk), LINUX_MIB_TCPLOSTRETRANSMIT,
+                             tcp_skb_pcount(skb));
+       }
+}
+
 /* Sum the number of packets on the wire we have marked as lost.
  * There are two cases we care about here:
  * a) Packet hasn't been marked lost (nor retransmitted),
index 26a42289a8703e8028a7ca72348c46b6c58d6058..f65a3ddd0d58ace0baf663b86fd53e580dd42888 100644 (file)
@@ -2,20 +2,6 @@
 #include <linux/tcp.h>
 #include <net/tcp.h>
 
-void tcp_mark_skb_lost(struct sock *sk, struct sk_buff *skb)
-{
-       struct tcp_sock *tp = tcp_sk(sk);
-
-       tcp_skb_mark_lost_uncond_verify(tp, skb);
-       if (TCP_SKB_CB(skb)->sacked & TCPCB_SACKED_RETRANS) {
-               /* Account for retransmits that are lost again */
-               TCP_SKB_CB(skb)->sacked &= ~TCPCB_SACKED_RETRANS;
-               tp->retrans_out -= tcp_skb_pcount(skb);
-               NET_ADD_STATS(sock_net(sk), LINUX_MIB_TCPLOSTRETRANSMIT,
-                             tcp_skb_pcount(skb));
-       }
-}
-
 static bool tcp_rack_sent_after(u64 t1, u64 t2, u32 seq1, u32 seq2)
 {
        return t1 > t2 || (t1 == t2 && after(seq1, seq2));