STRUCT LIBIE_CTLQ_CLEAN_PARAMS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ struct libie_ctlq_clean_params β€” cleaning parameters for Tx messages ✨

Okay so bestie, let me introduce you to this little struct, it's literally the glow-up checklist for Tx messages πŸ§ΉπŸ’…. This is from the libie...clean_params(9) Kernel API Manual, and it's giving "responsible queue owner" energy, fr fr.


πŸŽ€ SYNOPSIS πŸŽ€

struct libie_ctlq_clean_params {
    void (*rel_dma_mem)(const void *ctx, struct libie_cp_dma_mem
* dma_mem);
    const void                              *rel_ctx;
    struct libie_ctlq_info                  *ctlq;
    u16 num_msgs;
    bool force;
 };

🌸 Members β€” the cast of this struct 🌸

  • rel_dma_mem β€” a non-sleeping callback that puts the DMA buffer back after send. It's literally the "you dropped this πŸ‘‘" moment for memory. No sleeping on the job, bestie 😴🚫
  • rel_ctx β€” the extra context you pass along to that release callback. Like a little note attached to the callback so it knows what's up 🫢
  • ctlq β€” the control queue information. That's the queue's whole vibe check right there πŸ’«
  • num_msgs β€” how many messages are getting cleaned. Count 'em, don't play πŸ’―
  • force β€” clean even if DD is not yet set. Use only for final cleanup, and I mean ONLY. This is not a casual thing, this is the "we're doing the last pass, periodt" energy πŸš¨πŸ’€

🌈 SEE ALSO 🌈

All the sibling structs and enums that live in the same universe, from the kernel file ./include/linux/net/intel/libie/controlq.h. Go check 'em out, they're all linked and lowkey iconic:

  • 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)
  • 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_recv_params(9)
  • struct libie_ctlq_xn_init_params(9)

πŸ’‘ Friendly reminder bestie: that force flag is not for everyday use. It's giving "final cleanup only" β€” respect the DD bit, or things get real messy real fast πŸ’€

Brought to you from ./include/linux/net/intel/libie β€” October 2026, struct libie...clean_params(9). Slay, stay clean out there πŸ’–βœ¨πŸ“

πŸ“¦ where this page comes from