STRUCT LIBIE_CTLQ_DESC(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct libie_ctlq_desc(9) β€” Kernel API Manual πŸŽ€

okay so bestie, we're diving into struct libie_ctlq_desc β€” yes it's a 9th-section kernel API manpage, yes it's giving "I live in ./include/linux/net/intel/libie/controlq.h" energy, and yes we're gonna read it together πŸ’–


✨ NAME ✨

struct libie_ctlq_desc β€” the control queue descriptor format, aka the literal layout of one descriptor on the control queue. that's it. that's the whole vibe πŸ¦‹


🌸 SYNOPSIS 🌸

struct libie_ctlq_desc {
    __le64 qword0;
    __le64 qword1;
    __le64 qword2;
    __le64 qword3;
 };

four little __le64 besties, all in a row. so clean. so iconic. four qwords and nothing else πŸ‘‘


πŸ’œ Members πŸ’œ

  • qword0 β€” flags, message opcode, data length etc β€” the "what is this and how big is it" qword, lowkey the main character of the descriptor ✨
  • qword1 β€” virtchnl opcode, descriptor type and return value β€” the "what are we actually asking for, and hey here's the answer back" qword 🫢
  • qword2 β€” indirect message parameters β€” the details you need when the message is being passed indirectly, iykyk
  • qword3 β€” indirect message buffer address β€” and where that indirect buffer actually lives πŸŽ€
ngl the manpage literally writes "etc" for qword0 and we are NOT elaborating further, because the original does not elaborate further. we respect the source. periodt πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

the whole friend group shows up for this one, bestie:

  • the kernel file ./include/linux/net/intel/libie/controlq.h β€” and also enum (yes, that's how it's listed, we don't make the rules, we just relay them πŸ’…)
  • 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_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_recv_params(9)
  • struct libie_ctlq_xn_init_params(9)

and that's the whole page, bestie 🌈 this gem comes to you from ./include/linux/net/intel/libie, dated October 2026, and it's filed under struct libie_ctlq_desc(9) β€” go read the whole libie family, they all ate πŸ’–πŸŽ€

πŸ“¦ where this page comes from