irdma_set_fragment_gen_1(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… irdma_set_fragment_gen_1(9) β€” the Kernel API Manual moment

okay so bestie, we're in the Kernel API Manual today, and the star of the show is irdma_set_fragment_gen_1(9) πŸŽ€ lowkey a whole function, highkey doing exactly one thing. let's get into it.


✨ NAME ✨

irdma_set_fragment_gen_1 β€” set fragment in wqe πŸ¦‹

like, that's it. that's the whole gig. she sets a fragment inside a wqe. iconic behavior, no notes.


✨ SYNOPSIS ✨

void irdma_set_fragment_gen_1 (__le64 *wqe , u32 offset , struct ib_sge
*sge , u8 valid );

she takes four things and returns void β€” meaning she gives you nothing back except the satisfaction of a job well done πŸ’– and honestly? respect.


✨ ARGUMENTS ✨

okay so here's the roster, and every single one of them matters, no skipping, periodt:

  • wqe β€” the wqe you're setting the fragment in 🫢 like, this is the canvas, the main character of the operation.
  • offset β€” the offset value. yes bestie, it's an offset. it's offsetting. that's the vibe check ✨
  • sge β€” carries the sge length and stag 🧚 all wrapped up in a struct ib_sge *.
  • valid β€” the wqe valid flag 🌸 a whole u8 of "hey is this thing valid or not".
ngl, four args and zero return value? she's a side-effect queen and we love her for it πŸ’…

✨ SEE ALSO ✨

okay the friend group is huge, buckle up bestie 😭 β€” this all lives in the kernel file ./drivers/infiniband/hw/irdma/uk.c, and here's every single icon:

irdma_set_fragment(9), irdma_nop_1(9), irdma_clr_wqes(9), irdma_uk_qp_post_wr(9), irdma_qp_get_next_send_wqe(9), irdma_qp_get_next_recv_wqe(9), irdma_uk_rdma_write(9), irdma_uk_atomic_fetch_add(9), irdma_uk_atomic_compare_swap(9), irdma_uk_srq_post_receive(9), irdma_uk_rdma_read(9), irdma_uk_send(9), irdma_set_mw_bind_wqe_gen_1(9), irdma_copy_inline_data_gen_1(9), irdma_inline_data_size_to_quanta_gen_1(9), irdma_set_mw_bind_wqe(9), irdma_copy_inline_data(9), irdma_inline_data_size_to_quanta(9), irdma_uk_inline_rdma_write(9), irdma_uk_inline_send(9), irdma_uk_stag_local_invalidate(9), irdma_uk_post_receive(9), irdma_uk_cq_resize(9), irdma_uk_cq_set_resized_cnt(9), irdma_uk_cq_request_notification(9), irdma_uk_cq_empty(9), irdma_uk_cq_poll_cmpl(9), irdma_round_up_wq(9), irdma_get_wqe_shift(9), irdma_setup_connection_wqes(9), irdma_uk_srq_init(9), irdma_uk_calc_shift_wq(9), irdma_uk_calc_depth_shift_sq(9), irdma_uk_calc_depth_shift_rq(9), irdma_uk_qp_init(9), irdma_uk_cq_init(9), irdma_uk_clean_cq(9), irdma_nop(9), irdma_fragcnt_to_quanta_sq(9), irdma_fragcnt_to_wqesize_rq(9)

forty of them. FORTY. not me counting πŸ’€ but like, they're all family, iykyk 🫢


πŸŽ€ the sign-off πŸŽ€

so this little love letter to fragments lives in ./drivers/infiniband/hw/irdma, and the whole thing is dated October 2026 β€” yes, future queen behavior ⭐ β€” and it answers to the name irdma_set_fragment_gen_1(9).

go set some fragments bestie, you're gonna slay πŸŒˆβœ¨πŸ’œ

πŸ“¦ where this page comes from