hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/net/caif/cfpkt_skbuff.c
....@@ -1,7 +1,7 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * Copyright (C) ST-Ericsson AB 2010
34 * Author: Sjur Brendeland
4
- * License terms: GNU General Public License (GPL) version 2
55 */
66
77 #define pr_fmt(fmt) KBUILD_MODNAME ":%s(): " fmt, __func__
....@@ -319,16 +319,12 @@
319319 if (tmppkt == NULL)
320320 return NULL;
321321 tmp = pkt_to_skb(tmppkt);
322
- skb_set_tail_pointer(tmp, dstlen);
323
- tmp->len = dstlen;
324
- memcpy(tmp->data, dst->data, dstlen);
322
+ skb_put_data(tmp, dst->data, dstlen);
325323 cfpkt_destroy(dstpkt);
326324 dst = tmp;
327325 }
328
- memcpy(skb_tail_pointer(dst), add->data, skb_headlen(add));
326
+ skb_put_data(dst, add->data, skb_headlen(add));
329327 cfpkt_destroy(addpkt);
330
- dst->tail += addlen;
331
- dst->len += addlen;
332328 return skb_to_pkt(dst);
333329 }
334330
....@@ -359,13 +355,11 @@
359355 if (skb2 == NULL)
360356 return NULL;
361357
362
- /* Reduce the length of the original packet */
363
- skb_set_tail_pointer(skb, pos);
364
- skb->len = pos;
358
+ skb_put_data(skb2, split, len2nd);
365359
366
- memcpy(skb2->data, split, len2nd);
367
- skb2->tail += len2nd;
368
- skb2->len += len2nd;
360
+ /* Reduce the length of the original packet */
361
+ skb_trim(skb, pos);
362
+
369363 skb2->priority = skb->priority;
370364 return skb_to_pkt(skb2);
371365 }