From 4f2266748eabc42f107ecb6a3cc5b34614b29a12 Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Wed, 27 Oct 2021 13:19:22 -0700 Subject: [PATCH] tcp: do not clear skb->csum if already zero Freshly allocated skbs have their csum field cleared already. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller --- net/ipv4/tcp.c | 1 - net/ipv4/tcp_output.c | 1 - net/ipv6/tcp_ipv6.c | 1 - 3 files changed, 3 deletions(-) diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index c58d448b45a0..88475b640344 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -658,7 +658,6 @@ void tcp_skb_entail(struct sock *sk, struct sk_buff *skb) struct tcp_sock *tp = tcp_sk(sk); struct tcp_skb_cb *tcb = TCP_SKB_CB(skb); - skb->csum = 0; tcb->seq = tcb->end_seq = tp->write_seq; tcb->tcp_flags = TCPHDR_ACK; tcb->sacked = 0; diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 7ecf35d0f847..5664355b0d09 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -2398,7 +2398,6 @@ static int tcp_mtu_probe(struct sock *sk) 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; - nskb->csum = 0; tcp_insert_write_queue_before(nskb, skb, sk); tcp_highest_sack_replace(sk, skb, nskb); diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index c678e778c1fb..2cc9b0e53ad1 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -969,7 +969,6 @@ static void tcp_v6_send_response(const struct sock *sk, struct sk_buff *skb, u32 fl6.flowlabel = label; buff->ip_summed = CHECKSUM_PARTIAL; - buff->csum = 0; __tcp_v6_send_check(buff, &fl6.saddr, &fl6.daddr); -- 2.11.0