rvt_post_srq_recv(9)
π rvt_post_srq_recv(9) π
okay bestie, so this is a page straight out of the Kernel API Manual, and it's all about rvt_post_srq_recv β the little function that gets your receive posted on a shared receive queue. it's short, it's sweet, and honestly it's giving "small but crucial" energy. let's get into it π
β¨ NAME β¨
rvt_post_srq_recv β post a receive on a shared receive queue π¦
πΈ SYNOPSIS πΈ
int rvt_post_srq_recv (struct ib_srq *ibsrq , const struct ib_recv_wr
*wr , const struct ib_recv_wr **bad_wr );
likeβ¦ the whole signature, exactly as it lives in the headers. copy it, don't touch it, periodt π
π ARGUMENTS π
ibsrqβ the SRQ you're posting the receive on. this is your queue, your moment, your main character β¨wrβ the list of work requests to post. plural! it's a whole list, not just one, and we love her for that π«Άbad_wrβ a pointer to the first WR that causes a problem gets put in here. so if something goes wrong, this is where the drama gets reported π
π₯ DESCRIPTION π₯
so here's the little detail that matters: this may be called from interrupt context. yes, interrupt context. no cap. handle it accordingly, bestie π
π RETURN π
0 on success, else errno. that's it. that's the whole vibe check π
π SEE ALSO π
and now for the friend group β the kernel file ./drivers/infiniband/sw/rdmavt/qp.c and literally all of these iconic siblings:
init_qpn_table(9)free_qpn_table(9)rvt_driver_qp_init(9)rvt_free_qp_cb(9)rvt_free_all_qps(9)rvt_qp_exit(9)alloc_qpn(9)rvt_clear_mr_refs(9)rvt_swqe_has_lkey(9)rvt_qp_sends_has_lkey(9)rvt_qp_acks_has_lkey(9)rvt_qp_mr_clean(9)rvt_remove_qp(9)rvt_alloc_rq(9)rvt_init_qp(9)_rvt_reset_qp(9)rvt_reset_qp(9)rvt_free_qpn(9)get_allowed_ops(9)free_ud_wq_attr(9)alloc_ud_wq_attr(9)rvt_create_qp(9)rvt_error_qp(9)rvt_modify_qp(9)rvt_destroy_qp(9)rvt_query_qp(9)rvt_post_recv(9)rvt_qp_valid_operation(9)rvt_qp_is_avail(9)rvt_post_one_wr(9)rvt_post_send(9)get_rvt_head(9)rvt_get_rwqe(9)rvt_comm_est(9)rvt_add_rnr_timer(9)rvt_stop_rc_timers(9)rvt_stop_rnr_timer(9)rvt_del_timers_sync(9)rvt_qp_iter_init(9)rvt_qp_iter_next(9)rvt_qp_iter(9)rvt_copy_sge(9)rvt_ruc_loopback(9)
okay that's the whole page, ily, go post some receives responsibly π§π
this little number lives over in ./drivers/infiniband/sw/rdmavt and it's dated October 2026 β so yeah, shoutout to the source, the version, and the date, they ate πβ
π¦ 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