Loading net/core/dev.c +8 −12 Original line number Diff line number Diff line Loading @@ -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); 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: Loading Loading @@ -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); 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)); Loading Loading
net/core/dev.c +8 −12 Original line number Diff line number Diff line Loading @@ -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); 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: Loading Loading @@ -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); 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)); Loading