STRUCT LIBIE_CTLQ_XN_RECV_PARAMS(9)
π NAME π
struct libie_ctlq_xn_recv_params β the little request struct that says "hey, go receive some xn responses for me" π«Ά
ok so real talk, this page lives in the Kernel API Manual (yes, struct libie..._recv_params(9), that's the one, bestie β¨), and it's basically the starter pack for pulling xn responses off a control queue.
β¨ SYNOPSIS β¨
struct libie_ctlq_xn_recv_params {
void (*ctlq_msg_handler)(struct libie_ctlq_ctx *ctx, struct
libie_ctlq_msg *msg);
struct libie_ctlq_xn_manager *xnm;
struct libie_ctlq_info *ctlq;
u32 budget;
};
like, that's the whole thing. four members. no cap. π
π Members π
okay so let's meet the squad, one by one π
ctlq_msg_handlerβ your handler for Rx messages that have no matching xn. this one is mandatory, so no ghosting it π. signature's literallyvoid (*ctlq_msg_handler)(struct libie_ctlq_ctx *ctx, struct libie_ctlq_msg *msg)β that's the whole vibe.xnmβ the Xn manager, aka the one whose whole job is processing Xn entries. main character energy fr πctlqβ control queue information. yes it's just the info, it's giving "who am I, where do I belong" π¦budgetβ au32, and it's the maximum number of messages to process. think of it as your screen-time limit but for message processing π
π SEE ALSO π
the whole friend group, assembled π«Ά β all of these are in the Kernel file ./include/linux/net/intel/libie/controlq.h:
enum libie_ctlq_type(9)struct libie_ctlq_ctx(9)struct libie_ctlq_reg(9)struct libie_cp_dma_mem(9)struct libie_ctlq_msg(9)struct libie_ctlq_create_info(9)struct libie_ctlq_info(9)struct libie_ctlq_desc(9)struct libie_ctlq_clean_params(9)libie_ctlq_release_rx_buf(9)enum libie_ctlq_xn_state(9)struct libie_ctlq_xn(9)struct libie_ctlq_xn_manager(9)struct libie_ctlq_xn_send_params(9)libie_cp_can_send_onstack(9)struct libie_ctlq_xn_init_params(9)
lowkey obsessed with how tidy this is. go read the whole controlq.h friend group, iykyk π§
and that's the page!! tysm for reading bestie, this one's from ./include/linux/net/intel/libie, dated October 2026, and it goes by struct libie..._recv_params(9). periodt. ππΈ
π¦ 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