]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
xsk: avoid overwriting skb fields for multi-buffer traffic
authorMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Thu, 25 Sep 2025 16:00:07 +0000 (18:00 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 26 Sep 2025 20:51:45 +0000 (13:51 -0700)
commitc30d084960cf316c95fbf145d39974ce1ff7889c
tree48578cbd6099ecd8052cc36d52a38ede33f0f5f1
parent6f540af89e1cfd1a33f63989c50010629b169cc5
xsk: avoid overwriting skb fields for multi-buffer traffic

We are unnecessarily setting a bunch of skb fields per each processed
descriptor, which is redundant for fragmented frames.

Let us set these respective members for first fragment only. To address
both paths that we have within xsk_build_skb(), move assignments onto
xsk_set_destructor_arg() and rename it to xsk_skb_init_misc().

Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Reviewed-by: Jason Xing <kerneljasonxing@gmail.com>
Acked-by: Martin KaFai Lau <martin.lau@kernel.org>
Link: https://patch.msgid.link/20250925160009.2474816-2-maciej.fijalkowski@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/xdp/xsk.c