net: Use __skb_pagelen() directly in skb_cow_data()
authorMiaohe Lin <linmiaohe@huawei.com>
Sat, 1 Aug 2020 09:30:23 +0000 (17:30 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 3 Aug 2020 22:38:31 +0000 (15:38 -0700)
In fact, skb_pagelen() - skb_headlen() is equal to __skb_pagelen(), use it
directly to avoid unnecessary skb_headlen() call.

Also fix the CHECK note of checkpatch.pl:
    Comparison to NULL could be written "!__pskb_pull_tail"

Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/skbuff.c

index 4e2edfb..97ad652 100644 (file)
@@ -4413,7 +4413,7 @@ int skb_cow_data(struct sk_buff *skb, int tailbits, struct sk_buff **trailer)
         * at the moment even if they are anonymous).
         */
        if ((skb_cloned(skb) || skb_shinfo(skb)->nr_frags) &&
-           __pskb_pull_tail(skb, skb_pagelen(skb)-skb_headlen(skb)) == NULL)
+           !__pskb_pull_tail(skb, __skb_pagelen(skb)))
                return -ENOMEM;
 
        /* Easy case. Most of packets will go this way. */