rvt_qp_is_avail(9)
rvt_qp_is_avail(9) πΈ
okay bestie, welcome to the Kernel API Manual page for rvt_qp_is_avail β it's literally about determining queue capacity, and we're gonna get into it π
π NAME π
rvt_qp_is_avail β determine queue capacity. that's the whole mission, no cap β¨
β¨ SYNOPSIS β¨
int rvt_qp_is_avail (struct rvt_qp *qp , struct rvt_dev_info *rdi , bool
reserved_op );
π ARGUMENTS π
qpβ the qp, obviously π«Άrdiβ the rdmavt devicereserved_opβ is reserved operation, so it tells you whether this is a reserved op or not
π¦ DESCRIPTION π¦
Heads up, bestie: this assumes the s_hlock is held, but the s_last qp variable is uncontrolled. that's the setup, okay? π
For non reserved operations, the qp->s_avail may be changed. lowkey important.
The return value is zero or a -ENOMEM. that's the whole return vibe, periodt π
π SEE ALSO π
Kernel file ./drivers/infiniband/sw/rdmavt/qp.c β go read it if you're curious, iykyk π
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_post_one_wr(9)rvt_post_send(9)rvt_post_srq_recv(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)
and that's the tea β footer vibe: source/version ./drivers/infiniband/sw/rdmavt, dated October 2026, page rvt_qp_is_avail(9). 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