rdma_rw_ctx_post(9)
π rdma_rw_ctx_post(9) π
okay bestie, welcome to the Kernel API Manual β today's main character is rdma_rw_ctx_post(9), and she is literally the one who actually sends the mail. no cap. π¦
β¨ NAME β¨
rdma_rw_ctx_post β post a RDMA READ or RDMA WRITE operation π₯
like, she doesn't plan the operation, she ships it. periodt.
πΈ SYNOPSIS πΈ
int rdma_rw_ctx_post (struct rdma_rw_ctx *ctx , struct ib_qp *qp , u32
port_num , struct ib_cqe *cqe , struct ib_send_wr *chain_wr );
she returns an int, she takes five things, and she's ready to go π
π ARGUMENTS π
ctxβ the context to operate on. this is the vibe, the whole storyline, the set of RDMA READ/WRITE ops that's about to go live β¨qpβ the queue pair to operate on. your icon, your workhorse πport_numβ port num to which the connection is bound. au32, she's specific π§cqeβ completion queue entry for the last WR. this is how the caller finds out the story ended πchain_wrβ WR to append to the posted chain. optional bestie, but read the description before you skip her π
π DESCRIPTION π
okay so here's the tea, and it's genuinely good tea:
she posts the set of RDMA READ/WRITE operations described by ctx, plus any memory registration operations needed. so yeah β the memory registration ops come along for the ride, they're part of the package, no extra charge π«Ά
now the important bit, pay attention:
If chain_wr is non-NULL, the WR it points to will be appended to the chain of WRs posted. π
and conversely:
Ifchain_wris not set,cqemust be set so that the caller gets a completion notification. π nochain_wr, nocqe= no completion notification, and that's not a vibe.
like literally, one of them has to be there. it's giving "pick a lane, bestie" π
π SEE ALSO π
the whole friend group, fr fr β plus the kernel file where she lives:
- Kernel file
./drivers/infiniband/core/rw.c rdma_rw_ctx_init(9)rdma_rw_ctx_init_bvec(9)rdma_rw_ctx_signature_init(9)rdma_rw_ctx_wrs(9)rdma_rw_ctx_destroy(9)rdma_rw_ctx_destroy_bvec(9)rdma_rw_ctx_destroy_signature(9)rdma_rw_mr_factor(9)rdma_rw_max_send_wr(9)
go read them, iykyk πβ¨
and that's the whole page, bestie!! π signed off from ./drivers/infiniband/core, dated October 2026, in the Kernel API Manual β mwah, slay, go post some WRs πππ¦
π¦ 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