tcp: use MAX_TCP_HEADER in tcp_stream_alloc_skb
authorEric Dumazet <edumazet@google.com>
Mon, 25 Oct 2021 22:13:41 +0000 (15:13 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 26 Oct 2021 13:45:12 +0000 (14:45 +0100)
Both IPv4 and IPv6 uses same reserve, no need risking
cache line misses to fetch its value.

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

index 9ba2317..f30a268 100644 (file)
@@ -867,7 +867,7 @@ struct sk_buff *tcp_stream_alloc_skb(struct sock *sk, int size, gfp_t gfp,
        if (unlikely(tcp_under_memory_pressure(sk)))
                sk_mem_reclaim_partial(sk);
 
-       skb = alloc_skb_fclone(size + sk->sk_prot->max_header, gfp);
+       skb = alloc_skb_fclone(size + MAX_TCP_HEADER, gfp);
        if (likely(skb)) {
                bool mem_scheduled;
 
@@ -878,7 +878,7 @@ struct sk_buff *tcp_stream_alloc_skb(struct sock *sk, int size, gfp_t gfp,
                        mem_scheduled = sk_wmem_schedule(sk, skb->truesize);
                }
                if (likely(mem_scheduled)) {
-                       skb_reserve(skb, sk->sk_prot->max_header);
+                       skb_reserve(skb, MAX_TCP_HEADER);
                        /*
                         * Make sure that we have exactly size bytes
                         * available to the caller, no more, no less.