svc_rdma_send_ctxt_put(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

Manual name? Kernel API Manual, bestie. Page? svc_rdma_send_ctxt_put(9). The useful one-liner is literally: svc_rdma_send_ctxt_put β€” Queue send_ctxt for deferred release. ✨

πŸŽ€ SYNOPSIS πŸŽ€

void svc_rdma_send_ctxt_put (struct svcxprt_rdma *rdma , struct
       svc_rdma_send_ctxt *ctxt );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • rdma β€” the controlling svcxprt_rdma, aka the transport's main character.
  • ctxt β€” the send_ctxt to queue for deferred release. It is not being released right this second; it is getting in line for later, iykyk. πŸ’…

🌸 DESCRIPTION 🌸

This function queues ctxt onto sc_send_release_list. The actual DMA unmap and page release run later in svc_rdma_send_ctxts_drain, typically from xpo_release_ctxt.

On the empty-to-non-empty transition, it sets XPT_DATA and enqueues the transport. This self-trigger matters, fr fr: without it, a Send completion that arrives after the last xpo_release_ctxt on an idle connection would leave the send_ctxt's DMA mappings and reply pages pinned until another drain occurred. Not the slay ending we want, so the self-trigger handles it. πŸ”₯

🌈 SEE ALSO 🌈

Source/version: ./net/sunrpc/xprtrdma · date: October 2026. Bye bestie, go queue those send_ctxts with main character energy 🫢✨

πŸ“¦ where this page comes from