__libeth_xdp_complete_tx(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… __libeth_xdp_complete_tx(9) πŸ’…

okay so welcome to the Kernel API Manual entry for this lil internal helper β€” it’s giving β€œcleanup crew with main character energy,” and honestly? iconic. πŸ’–

🌸 NAME 🌸

__libeth_xdp_complete_tx β€” complete sent XDPSQE, periodt.

πŸ¦‹ SYNOPSIS πŸ¦‹

void __libeth_xdp_complete_tx (struct libeth_sqe *sqe , struct
libeth_cq_pp *cp , typeof(libeth_xdp_return_buff_bulk) bulk ,
typeof(libeth_xsk_buff_free_slow) xsk );

πŸŽ€ ARGUMENTS πŸŽ€

  • sqe β€” SQ element / Tx buffer to complete. this is the thing getting wrapped up, bestie.
  • cp β€” Tx polling/completion params. the completion-param situation, no cap.
  • bulk β€” internal callback to bulk-free XDP_TX buffers.
  • xsk β€” internal callback to free XSk XDP_TX buffers.

πŸ’– DESCRIPTION πŸ’–

⚠️ real talk: use the non-underscored version in drivers instead. this one is shared internally with libeth_tx_complete_any, iykyk.

it completes an XDPSQE of any type of XDP frame. the way that this includes DMA unmapping when needed, buffer freeing, stats update, and SQE invalidation? obsessed. it’s literally the whole cleanup checklist in one function. ✨

🌈 SEE ALSO 🌈

Kernel file ./include/net/libeth/xdp.h, plus the whole squad:


mwah πŸ’‹ this page is from ./include/net/libeth, dated October 2026 β€” bye bestie, go complete those XDPSQEs responsibly 🫢✨

πŸ“¦ where this page comes from