xsk: make xsk_buff_add_frag() really add the frag via __xdp_buff_add_frag()
authorAlexander Lobakin <aleksander.lobakin@intel.com>
Wed, 18 Dec 2024 17:44:32 +0000 (18:44 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 20 Dec 2024 03:51:14 +0000 (19:51 -0800)
commit51205f841a495c78aa59d0e41683463dac23eb27
tree76dddd37b5d6696f92b2ee8997279205c39f82fb
parent539c1fba1ac77184215d892eda0857f5687b7366
xsk: make xsk_buff_add_frag() really add the frag via __xdp_buff_add_frag()

Currently, xsk_buff_add_frag() only adds the frag to pool's linked list,
not doing anything with the &xdp_buff. The drivers do that manually and
the logic is the same.
Make it really add an skb frag, just like xdp_buff_add_frag() does that,
and freeing frags on error if needed. This allows to remove repeating
code from i40e and ice and not add the same code again and again.

Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Link: https://patch.msgid.link/20241218174435.1445282-5-aleksander.lobakin@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/intel/i40e/i40e_xsk.c
drivers/net/ethernet/intel/ice/ice_xsk.c
include/net/xdp_sock_drv.h