STRUCT LIBETH_XDPSQ(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

struct libeth_xdpsq β€” abstraction for an XDPSQ. okay bestie, this is the struct libeth_xdpsq(9) page from the Kernel API Manual, and it's literally the blueprint for an XDPSQ abstraction. periodt. πŸ’–

✨ SYNOPSIS ✨

here's the exact struct, no edits, no cap:

struct libeth_xdpsq {
    struct xsk_buff_pool            *pool;
    struct libeth_sqe               *sqes;
    void *descs;
    u32 *ntu;
    u32 count;
    u32 *pending;
    u32 *xdp_tx;
    struct libeth_xdpsq_lock        *lock;
 };

🌸 Members 🌸

  • pool β€” XSk buffer pool for XSk XDP_TX and xmit. slay.
  • sqes β€” array of Tx buffers from the actual queue struct. πŸ’…
  • descs β€” opaque pointer to the HW descriptor array. iykyk.
  • ntu β€” pointer to the next free descriptor index. ✨
  • count β€” number of descriptors on that queue. πŸŽ€
  • pending β€” pointer to the number of sent-not-completed descs on that queue. 😭
  • xdp_tx β€” pointer to the above, but only for non-XSk-xmit frames. noted.
  • lock β€” corresponding XDPSQ lock. πŸ”’

🌈 Description 🌈

this icon is the abstraction for driver-independent implementation of Tx. the driver places it on the stack and fills it in before the transmission, so the generic functions can access and modify driver-specific resources. it's giving driver-specific resources, but make it generic. no cap. πŸ’–

πŸ‘€ SEE ALSO πŸ‘€

Kernel file: ./include/net/libeth/xdp.h β€” and here's the whole related-reference squad, every single one, in order:


bye bestie 🫢 this page's source/version is ./include/net/libeth, and the date is October 2026. stay iconic βœ¨πŸ’…

πŸ“¦ where this page comes from