Skip to content

Commit

Permalink
net: core: use helper skb_ensure_writable in more places
Browse files Browse the repository at this point in the history
Use helper skb_ensure_writable in two more places to simplify the code.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Heiner Kallweit authored and David S. Miller committed Oct 7, 2019
1 parent 3289086 commit 8211fbf
Showing 1 changed file with 8 additions and 12 deletions.
20 changes: 8 additions & 12 deletions net/core/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -3165,12 +3165,9 @@ int skb_checksum_help(struct sk_buff *skb)
offset += skb->csum_offset;
BUG_ON(offset + sizeof(__sum16) > skb_headlen(skb));

if (skb_cloned(skb) &&
!skb_clone_writable(skb, offset + sizeof(__sum16))) {
ret = pskb_expand_head(skb, 0, 0, GFP_ATOMIC);
if (ret)
goto out;
}
ret = skb_ensure_writable(skb, offset + sizeof(__sum16));
if (ret)
goto out;

*(__sum16 *)(skb->data + offset) = csum_fold(csum) ?: CSUM_MANGLED_0;
out_set_summed:
Expand Down Expand Up @@ -3205,12 +3202,11 @@ int skb_crc32c_csum_help(struct sk_buff *skb)
ret = -EINVAL;
goto out;
}
if (skb_cloned(skb) &&
!skb_clone_writable(skb, offset + sizeof(__le32))) {
ret = pskb_expand_head(skb, 0, 0, GFP_ATOMIC);
if (ret)
goto out;
}

ret = skb_ensure_writable(skb, offset + sizeof(__le32));
if (ret)
goto out;

crc32c_csum = cpu_to_le32(~__skb_checksum(skb, start,
skb->len - start, ~(__u32)0,
crc32c_csum_stub));
Expand Down

0 comments on commit 8211fbf

Please sign in to comment.