aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/skbuff.c
diff options
context:
space:
mode:
authorRichard Gobert <richardbgobert@gmail.com>2022-06-22 18:09:03 +0200
committerJakub Kicinski <kuba@kernel.org>2022-06-24 16:24:38 -0700
commitede57d58e6f38d5bc66137368e4a1e68a157af6e (patch)
tree9a412c4d1bbf5865189ee1eba9e926ea3749561e /net/core/skbuff.c
parenttc-testing: gitignore, delete plugins directory (diff)
downloadlinux-dev-ede57d58e6f38d5bc66137368e4a1e68a157af6e.tar.xz
linux-dev-ede57d58e6f38d5bc66137368e4a1e68a157af6e.zip
net: helper function skb_len_add
Move the len fields manipulation in the skbs to a helper function. There is a comment specifically requesting this and there are several other areas in the code displaying the same pattern which can be refactored. This improves code readability. Signed-off-by: Richard Gobert <richardbgobert@gmail.com> Link: https://lore.kernel.org/r/20220622160853.GA6478@debian Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/core/skbuff.c')
-rw-r--r--net/core/skbuff.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 00bf35ee8205..c62e42d0c531 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -3195,9 +3195,7 @@ skb_zerocopy(struct sk_buff *to, struct sk_buff *from, int len, int hlen)
}
}
- to->truesize += len + plen;
- to->len += len + plen;
- to->data_len += len + plen;
+ skb_len_add(to, len + plen);
if (unlikely(skb_orphan_frags(from, GFP_ATOMIC))) {
skb_tx_error(from);
@@ -3634,13 +3632,8 @@ onlymerged:
tgt->ip_summed = CHECKSUM_PARTIAL;
skb->ip_summed = CHECKSUM_PARTIAL;
- /* Yak, is it really working this way? Some helper please? */
- skb->len -= shiftlen;
- skb->data_len -= shiftlen;
- skb->truesize -= shiftlen;
- tgt->len += shiftlen;
- tgt->data_len += shiftlen;
- tgt->truesize += shiftlen;
+ skb_len_add(skb, -shiftlen);
+ skb_len_add(tgt, shiftlen);
return shiftlen;
}