STRUCT LIBETH_FQ(9)
π struct libeth_fq(9) π
okay so bestie, welcome to the manual page for struct libeth_fq, straight out of the Kernel API Manual β yes, the kernel has a manual, and yes, it's giving legendary. this one's all about a struct that represents a buffer (fill) queue π
β¨ NAME β¨
struct libeth_fq β the struct that represents a buffer (fill) queue. that's it, that's the vibe π¦
πΈ SYNOPSIS πΈ
here's the whole thing, exactly as it lives, no edits, no cap:
struct libeth_fq {
struct {
struct page_pool *pp;
struct libeth_fqe *fqes;
u32 truesize;
u32 count;
};
enum libeth_fqe_type type:2;
bool hsplit:1;
bool xdp:1;
bool no_napi:1;
u32 buf_len;
int nid;
};
π«Ά Members π«Ά
not me listing every single member, because missing one would be a crime π
{unnamed_struct}β anonymous. it's literally an anonymous struct, no name, mysterious main character energy πppβ thepage_poolfor buffer management. it handles the buffer logistics, iykyk.fqesβ array of Rx buffers. the whole lineup β¨truesizeβ size to allocate per buffer, w/overhead β note that overhead is included, so don't forget it bestie πcountβ number of descriptors/buffers the queue has. count them, king πtypeβ type of the buffers this queue has. it's anenum libeth_fqe_typeand it's only taking:2bits, lowkey efficient.hsplitβ flag whether header split is enabled. one whole:1bit of information πΈxdpβ flag indicating whether XDP is enabled. also:1bit, also iconic.no_napiβ the queue is not a data queue and does not have NAPI. love that for it πbuf_lenβ HW-writeable length per each buffer. hardware writes here, so it matters fr fr.nidβ ID of the closest NUMA node with memory. gotta stay close to your memory, literally π§
π SEE ALSO π
go read these next, bestie, they're all family:
- Kernel file
./include/net/libeth/rx.h struct libeth_fqe(9)enum libeth_fqe_type(9)libeth_rx_alloc(9)libeth_rx_sync_for_cpu(9)struct libeth_rx_csum(9)struct libeth_rqe_info(9)libeth_rx_pt_get_ip_ver(9)libeth_rx_pt_set_hash(9)
okay that's the whole page, you ate that π this legend lives at ./include/net/libeth and it's dated October 2026 β yes, the future, we're just that ahead. bye bestie, go read struct libeth_fqe(9) next πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms