rdma_rw_ctx_post(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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. a u32, 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:

If chain_wr is not set, cqe must be set so that the caller gets a completion notification. 😭 no chain_wr, no cqe = 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:

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