tcp: do not clear TCP_SKB_CB(skb)->sacked if already zero
authorEric Dumazet <edumazet@google.com>
Wed, 27 Oct 2021 20:19:23 +0000 (13:19 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 28 Oct 2021 11:44:39 +0000 (12:44 +0100)
Freshly allocated skbs have zero in skb->cb[] already.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c
net/ipv4/tcp_output.c

index 88475b6..7a7b9aa 100644 (file)
@@ -660,7 +660,6 @@ void tcp_skb_entail(struct sock *sk, struct sk_buff *skb)
 
        tcb->seq     = tcb->end_seq = tp->write_seq;
        tcb->tcp_flags = TCPHDR_ACK;
-       tcb->sacked  = 0;
        __skb_header_release(skb);
        tcp_add_write_queue_tail(sk, skb);
        sk_wmem_queued_add(sk, skb->truesize);
index 5664355..6867e5d 100644 (file)
@@ -394,7 +394,6 @@ static void tcp_init_nondata_skb(struct sk_buff *skb, u32 seq, u8 flags)
        skb->ip_summed = CHECKSUM_PARTIAL;
 
        TCP_SKB_CB(skb)->tcp_flags = flags;
-       TCP_SKB_CB(skb)->sacked = 0;
 
        tcp_skb_pcount_set(skb, 1);
 
@@ -2139,9 +2138,6 @@ static int tso_fragment(struct sock *sk, struct sk_buff *skb, unsigned int len,
        TCP_SKB_CB(skb)->tcp_flags = flags & ~(TCPHDR_FIN | TCPHDR_PSH);
        TCP_SKB_CB(buff)->tcp_flags = flags;
 
-       /* This packet was never sent out yet, so no SACK bits. */
-       TCP_SKB_CB(buff)->sacked = 0;
-
        tcp_skb_fragment_eor(skb, buff);
 
        skb_split(skb, buff, len);
@@ -2397,7 +2393,6 @@ static int tcp_mtu_probe(struct sock *sk)
        TCP_SKB_CB(nskb)->seq = TCP_SKB_CB(skb)->seq;
        TCP_SKB_CB(nskb)->end_seq = TCP_SKB_CB(skb)->seq + probe_size;
        TCP_SKB_CB(nskb)->tcp_flags = TCPHDR_ACK;
-       TCP_SKB_CB(nskb)->sacked = 0;
 
        tcp_insert_write_queue_before(nskb, skb, sk);
        tcp_highest_sack_replace(sk, skb, nskb);