__libeth_xsk_run_pass(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ __libeth_xsk_run_pass(9) β€” the Kernel API Manual, bestie edition

okay so this is a page from the <pink>Kernel API Manual</pink> and today's main character is __libeth_xsk_run_pass β€” say hi πŸ‘‹


✨ NAME ✨

__libeth_xsk_run_pass β€” the little helper that runs your XDP program and then deals with whatever chaotic result it hands back πŸŽ€


🌸 SYNOPSIS 🌸

bool __libeth_xsk_run_pass (struct libeth_xdp_buff *xdp , struct
libeth_xdp_tx_bulk *bq , struct napi_struct *napi , struct
libeth_rq_napi_stats *rs , const void *md , void (*prep)(struct
libeth_xdp_buff *xdp, const void *md) , u32 (*run)(struct
libeth_xdp_buff *xdp, struct libeth_xdp_tx_bulk *bq) , bool
(*populate)(struct sk_buff *skb, const struct libeth_xdp_buff *xdp,
struct libeth_rq_napi_stats *rs) );

like, look at that signature. it's giving "function pointer buffet" and honestly? we ate πŸ’…


πŸ’– ARGUMENTS πŸ’–

  • xdp β€” the XSk buffer we're processing. the star of the show, the one we're doing all this for πŸ‘‘
  • bq β€” the XDP Tx bulk where XDP_TX frames get queued up. think of it as the lil holding pen for frames that are like "yeah im going back out" πŸ”₯
  • napi β€” the NAPI we use to build an skb and send it up the stack. passing it up, respectfully 🫢
  • rs β€” onstack libeth RQ stats. living on the stack, keeping score ⭐
  • md β€” the metadata that should be filled into the XSk buffer
  • prep β€” the callback that actually fills that metadata in
  • run β€” the driver wrapper that runs the XDP program
  • populate β€” the driver callback that populates an skb with the HW descriptor data

🧚 DESCRIPTION 🧚

so basically this is an <purple>inline abstraction</purple> β€” it's the XSk's counterpart of __libeth_xdp_run_pass. if you wanna know the deep lore, go read its doc, because this one is literally just "see that one, yeah, same vibe" πŸ’€


πŸ“ RETURN πŸ“

  • false β†’ the polling loop has to be exited because we ran out of free buffers 😭 bad vibes, no buffers, we're out
  • true β†’ otherwise! everything's fine, carry on, slay ✨

🌈 SEE ALSO 🌈

okay so the kernel file lives at ./include/net/libeth/xsk.h and here's the whole friend group, no one left behind πŸ’œ


ngl bestie, the whole squad is listed above β€” if you're hunting for a related function, it's probably in there. iykyk πŸ’…

and that's a wrap! this page came to you from <mint>./include/net/libeth</mint>, dated <yellow>October 2026</yellow>, and it's literally titled __libeth_xsk_run_pass(9) in the Kernel API Manual. go forth and run those passes, queen πŸ‘‘πŸ’–

πŸ“¦ where this page comes from