ice_xmit_xdp_tx_zc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ice_xmit_xdp_tx_zc(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual page for ice_xmit_xdp_tx_zc β€” yes that's a mouthful, yes it's iconic, no you don't have to say it out loud. sit down, hydrate, and let's get into it 🫢


✨ NAME ✨

ice_xmit_xdp_tx_zc β€” the AF_XDP ZC handler for XDP_TX, and honestly? she's kind of a big deal πŸ”₯


🌸 SYNOPSIS 🌸

int ice_xmit_xdp_tx_zc (struct xdp_buff *xdp , struct ice_tx_ring
*xdp_ring , struct xsk_buff_pool *xsk_pool );

three pointers in, one int out. that's the whole vibe check ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • xdp β€” the XDP buffer you're gonna xmit. she's the star of the show, no cap πŸ‘‘
  • xdp_ring β€” the XDP ring you're producing a descriptor onto. this is where the magic gets written down πŸ“
  • xsk_pool β€” the AF_XDP buffer pool pointer. the supply closet, basically πŸŽ€

πŸ’– DESCRIPTION πŸ’–

okay so literally the first thing to know: this function works directly on xdp_buff, and there's no need to convert it to xdp_frame. zero conversion arc, we skip the whole plotline, it's giving efficiency πŸ’…

the xdp_buff pointer gets stored into ice_tx_buf so that the cleaning side will be able to xsk_buff_free it later. yes, that's the plan, that's the setup, that's the whole foreshadowing situation 🧚

as for what she returns β€” it's a little choose-your-own-adventure:

  • ICE_XDP_TX β€” slay, a desc was successfully produced βœ…
  • ICE_XDP_CONSUMED β€” there was not enough space on the XDP ring 😭 no room, no desc, we move on
bestie please clock this: those two return values are the only two outcomes described here. don't go inventing a third one, i'm begging πŸ™ˆ

🌈 SEE ALSO 🌈

the kernel file herself lives at ./drivers/net/ethernet/intel/ice/ice_xsk.c β€” go say hi 🫢

and the whole friend group, in order, no cap:


and that's the page!! πŸ’œ this lil masterpiece comes to you straight from ./drivers/net/ethernet/intel/ice, dated October 2026 β€” yes, from the future, we stay ahead of schedule ✨ mwah, go read the other pages, ily, bye πŸŽ€πŸ’–

πŸ“¦ where this page comes from