irdma_uk_atomic_fetch_add(9)
πΈ irdma_uk_atomic_fetch_add (9) β Kernel API Manual πΈ
okay bestie, buckle up π this one is the atomic fetch-and-add operation, straight out of the Kernel API Manual, and yes the whole page is literally just vibes plus three arguments. short queen behavior. π
β¨ NAME β¨
irdma_uk_atomic_fetch_add β atomic fetch and add operation</p> π«Ά like it fetches, it adds, it does it atomically, iykyk.
π¦ SYNOPSIS π¦
int irdma_uk_atomic_fetch_add (struct irdma_qp_uk *qp , struct
irdma_post_sq_info *info , bool post_sq );
that's it, that's the whole signature π (and yes, we kept the spacing exactly as it is, we don't fix, we don't merge, we don't invent β we respect the source π)
π ARGUMENTS π
qpβ a hw qp ptr. literally a hardware queue-pair pointer, that's the whole thing, no notes π§infoβ the post sq information. this is where your send-queue info lives πpost_sqβ the flag to post sq. it's abool, it's giving toggle energy, you either post or you don't π
ngl there are exactly three arguments here and we're not gonna pretend there's a secret fourth one, because that would be lying and lying is not the vibe π
β SEE ALSO β
no cap, this is the group chat and everybody's in it π the kernel file lives at ./drivers/infiniband/hw/irdma/uk.c and this function is lowkey surrounded by icons:
irdma_set_fragment(9), irdma_set_fragment_gen_1(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_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).
like, forty references. FORTY. the way this page ate and left absolutely zero crumbs ππ₯ go read them, bestie, they're all right there.
and that's the whole page π biggest shoutout to ./drivers/infiniband/hw/irdma for being the source/version, dated October 2026 β future queen behavior fr fr πβ¨ mwah, bye! π«Άπ
π¦ 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