srpt_init_ch_qp(9)
π srpt_init_ch_qp β the Kernel API Manual glow-up (section 9)
okay so this is page srpt_init_ch_qp(9) from the Kernel API Manual, and bestie, it's a tiny one but it matters β it's the lil function that gets a queue pair dressed and ready before the real party starts. π
β¨ NAME β¨
srpt_init_ch_qp β initialize queue pair attributes
Like, it sets the vibes on a queue pair. That's the whole job. Iconic minimalism. π
πΈ SYNOPSIS πΈ
int srpt_init_ch_qp (struct srpt_rdma_ch *ch , struct ib_qp *qp );
π¦ ARGUMENTS π¦
chβ the SRPT RDMA channel. your main character struct, lowkey.qpβ the queue pair pointer. this is the one getting the glow-up.
π DESCRIPTION π
okay so here's the tea β β srpt_init_ch_qp initializes the attributes of queue pair qp by allowing local write, remote read and remote write. the whole trio, no cap. π«Ά
it also transitions qp to state IB_QPS_INIT. so yeah, it doesn't just set flags, it moves the queue pair into its INIT era. main character energy, fr fr. π
π₯ SEE ALSO π₯
the kernel file it lives in, obvi:
./drivers/infiniband/ulp/srpt/ib_srpt.c
and then the whole group chat of sibling functions β every single one, ngl, this is a long list but we're not skipping anybody, periodt:
srpt_event_handler(9)srpt_srq_event(9)srpt_qp_event(9)srpt_set_ioc(9)srpt_get_class_port_info(9)srpt_get_iou(9)srpt_get_ioc(9)srpt_get_svc_entries(9)srpt_mgmt_method_get(9)srpt_mad_send_handler(9)srpt_mad_recv_handler(9)srpt_refresh_port(9)srpt_unregister_mad_agent(9)srpt_alloc_ioctx(9)srpt_free_ioctx(9)srpt_alloc_ioctx_ring(9)srpt_free_ioctx_ring(9)srpt_set_cmd_state(9)srpt_test_and_set_cmd_state(9)srpt_post_recv(9)srpt_zerolength_write(9)srpt_get_desc_tbl(9)srpt_ch_qp_rtr(9)srpt_ch_qp_rts(9)srpt_ch_qp_err(9)srpt_get_send_ioctx(9)srpt_abort_cmd(9)srpt_rdma_read_done(9)srpt_build_cmd_rsp(9)srpt_build_tskmgmt_rsp(9)srpt_handle_cmd(9)srpt_handle_tsk_mgmt(9)srpt_handle_new_iu(9)srpt_send_done(9)srpt_create_ch_ib(9)srpt_close_ch(9)srpt_cm_req_recv(9)srpt_cm_rtu_recv(9)srpt_cm_handler(9)srpt_queue_response(9)srpt_release_sport(9)srpt_lookup_port(9)srpt_add_one(9)srpt_remove_one(9)srpt_close_session(9)srpt_parse_i_port_id(9)srpt_make_tpg(9)srpt_drop_tpg(9)srpt_make_tport(9)srpt_drop_tport(9)srpt_init_module(9)
and that's the whole page, bestie π«Ά this lil icon lives in ./drivers/infiniband/ulp/srpt, and the version we're stanning is dated October 2026. go forth and init those queue pairs, ily πβ¨
π¦ 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