STRUCT IXD_CTLQ_REQ(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct ixd_ctlq_req(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” yes, the actual manual, and yes, we're reading it together, don't panic 🫢


✨ NAME ✨

struct ixd_ctlq_req β€” the standard virtchnl request description, aka the little form you fill out to describe a request, no cap πŸ’…


🌸 SYNOPSIS 🌸

struct ixd_ctlq_req {
    enum virtchnl2_op opcode;
    size_t send_size;
    void (*send_buff_init)(struct ixd_adapter *adapter, void *send_buff,
void *ctx);
    int (*recv_process)(struct ixd_adapter *adapter, void *recv_buff,
size_t recv_size, void *ctx);
    void *ctx;
 };

like, look at her. five fields. iconic. main character struct energy honestly πŸ‘‘


πŸŽ€ Members πŸŽ€

okay let's go field by field, i got you:

  • opcode β€” the protocol opcode, and lowkey only virtchnl2 is needed for now ✨
  • send_size β€” the required length of the send buffer, like the exact size bestie, don't guess πŸ’€
  • send_buff_init β€” a function that initializes the allocated send buffer. it takes struct ixd_adapter *adapter, void *send_buff, and void *ctx πŸ¦‹
  • recv_process β€” a function that handles the CP response. it takes struct ixd_adapter *adapter, void *recv_buff, size_t recv_size, and void *ctx πŸ”₯
  • ctx β€” additional context for the callbacks, iykyk 🌈

πŸ’œ SEE ALSO πŸ’œ

  • Kernel file: ./drivers/net/ethernet/intel/ixd/ixd_ctlq.h β€” go read it, it's giving required reading πŸ“š

aaaaand that's the whole page, you ate that fr fr πŸ“

little sign-off from the source: this one lives in ./drivers/net/ethernet/intel/ixd, dated October 2026 β€” so yeah, she's from the future a lil bit πŸ’«

struct ixd_ctlq_req(9) β€” periodt. πŸ’…πŸŽ€

πŸ“¦ where this page comes from