rvt_qp_wqe_unreserve(9)
π rvt_qp_wqe_unreserve(9)
okay bestie, welcome to the Kernel API Manual β this is the page for rvt_qp_wqe_unreserve(9), and it's basically the little cleanup step that says βwe're done reserving, bestie.β β¨
π NAME π
rvt_qp_wqe_unreserve β clean reserved operation π§Ό
πΈ SYNOPSIS πΈ
void rvt_qp_wqe_unreserve (struct rvt_qp *qp , int flags );
π¦ ARGUMENTS π¦
qpβ the rvt qp. that's the star of the show here πflagsβ send wqe flags. yes, those flags π
π₯ DESCRIPTION π₯
so what does it actually do? this decrements the reserve use count. that's the whole vibe. iconic, lowkey crucial. π
okay this part is MUST-level important: this call MUST precede the change tos_lastto insure that post send sees a stables_avail. no cap, the order matters. π
an smp_mp__after_atomic is used to insure the compiler does not juggle the order of the s_last ring index and the decrementing of s_reserved_used. literally keeping the compiler from doing chaotic little reorder shenanigans. π«Ά
π SEE ALSO π
the whole squad, fr fr:
- Kernel file
./include/rdma/rdmavt_qp.h struct rvt_ud_wr(9)struct rvt_krwq(9)rvt_get_swqe_ah_attr(9)rvt_get_swqe_remote_qpn(9)rvt_get_swqe_remote_qkey(9)rvt_get_swqe_pkey_index(9)rvt_get_rq_count(9)struct rvt_operation_params(9)rvt_is_user_qp(9)rvt_get_qp(9)rvt_put_qp(9)rvt_put_swqe(9)rvt_qp_wqe_reserve(9)rvt_div_round_up_mtu(9)rvt_div_mtu(9)rvt_timeout_to_jiffies(9)rvt_lookup_qpn(9)rvt_mod_retry_timer_ext(9)rvt_put_qp_swqe(9)rvt_qp_swqe_incr(9)rvt_recv_cq(9)rvt_send_cq(9)rvt_qp_complete_swqe(9)struct rvt_qp_iter(9)ib_cq_tail(9)ib_cq_head(9)rvt_free_rq(9)rvt_to_iport(9)rvt_rc_credit_avail(9)
mwah π source/version: ./include/rdma; date: October 2026 β bye bestie! π«Ά
π¦ 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