hfi1_make_ruc_header_16B(9)
π hfi1_make_ruc_header_16B(9) β kernel API manual, but make it make sense π
okay so bestie, buckle up, this one's a kernel API manual page for hfi1_make_ruc_header_16B, and honestly? it's giving "small function, big responsibilities." β¨
πΈ NAME πΈ
hfi1_make_ruc_header_16B β build a 16B header. that's it, that's the whole vibe. it builds. a header. sixteen B's worth. π
π¦ SYNOPSIS π¦
void hfi1_make_ruc_header_16B (struct rvt_qp *qp , struct
ib_other_headers *ohdr , u32 bth0 , u32 bth1 , u32 bth2 , int middle ,
struct hfi1_pkt_state *ps );
no cap, that's the exact signature, don't @ me. it returns void, so it's not gonna hand you back a value β it's a "do the thing" kind of function, main character energy fr fr. π
π§ ARGUMENTS π§
qpβ the queue pair. iconic, essential, the whole point. πohdrβ a pointer to the destination header memory. it's where the header actually gets written, so likeβ¦ be nice to it. π«Άbth0βbth0passed in from the RC/UC builder. yes it's literally named the same thing, yes that's how the kernel rolls. πbth1βbth1passed in from the RC/UC builder. same deal, different digit. β¨bth2βbth2passed in from the RC/UC builder. completing the holy trinity of bth parameters ngl. πmiddleβ non zero implies indicates ahg "could" be used. keeping the original's exact phrasing there because that "implies indicates" is lowkey a whole mood. πpsβ the current packet state. the vibe check for the packet, basically. π
β DESCRIPTION β
so what does this routine actually do? it builds a 16B header, and along the way it may disarm ahg under these situations:
- packet needs a GRH
- BECN needed
- migration state not
IB_MIG_MIGRATED
that's the tea. β if any of those three things are happening, ahg gets disarmed. periodt. π₯
bestie note: "may" is doing a lot of work in that sentence β that's the original's wording, and we respect it. don't go assuming it always disarms. π
π SEE ALSO π
kernel file ./drivers/infiniband/hw/hfi1/ruc.c and also these absolute legends:
hfi1_make_grh(9)build_ahg(9)hfi1_make_ruc_header_9B(9)hfi1_schedule_send_yield(9)hfi1_do_send(9)
go read them, they're all friends of this function π«Άβ¨
π sign-off π
this whole flirty little page lives under ./drivers/infiniband/hw/hfi1, and the source/version stamp on it says October 2026 β so yeah, future-core of it all. π
later bestie, go build some headers π π
hfi1_make_ruc_header_16B(9) β ./drivers/infiniband/hw/hfi1 β October 2026 πΈ
π¦ 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