rpcrdma_rep_put(9)
π rpcrdma_rep_put(9) β from the Kernel API Manual, bestie
okay so like, welcome to the group chat, this is rpcrdma_rep_put, and honestly? she's a little cleanup queen and we stan her for it π§Ήβ¨
πΈ NAME πΈ
rpcrdma_rep_put β release that rpcrdma_rep right back to the free list, no cap
π¦ SYNOPSIS π¦
void rpcrdma_rep_put (struct rpcrdma_buffer *buf , struct rpcrdma_rep
*rep );
like, that's the whole signature. short. iconic. does exactly one thing. periodt π
π ARGUMENTS π
bufβ the buffer pool, aka where all the reps hang out π«Άrepβ the rep we're releasing, bye bestie π
β¨ DESCRIPTION β¨
so here's the tea β β the rep has this transient association with an rpc_rqst, right? it gets established by rpcrdma_reply_handler, and this function is where it gets torn down. and the whole point?? that association must not survive onto rb_free_reps. literally must not. not even a little π«
why, you ask? because rpcrdma_post_recvs pulls reps from the free list to re-post them, and if a free-listed rep had a non-NULL rr_rqst on it, that would imply the rep is still referenced by a req. and that's a whole mess we are not doing today π
so yeah, clean up the association before she goes back on the free list. vibe check passed, everybody goes home happy π
π₯ SEE ALSO π₯
Kernel file ./net/sunrpc/xprtrdma/verbs.c β and the whole extended friend group:
rpcrdma_flush_disconnect(9)rpcrdma_wc_send(9)rpcrdma_wc_receive(9)rpcrdma_cm_event_handler(9)rpcrdma_xprt_connect(9)rpcrdma_xprt_disconnect(9)rpcrdma_sendctx_get_locked(9)rpcrdma_sendctx_unget_locked(9)rpcrdma_sendctx_put_locked(9)rpcrdma_mrs_refresh(9)rpcrdma_req_create(9)rpcrdma_req_setup(9)rpcrdma_buffer_create(9)rpcrdma_req_destroy(9)rpcrdma_mrs_destroy(9)rpcrdma_buffer_destroy(9)rpcrdma_mr_get(9)rpcrdma_reply_put(9)rpcrdma_buffer_get(9)rpcrdma_buffer_put(9)rpcrdma_regbuf_realloc(9)__rpcrdma_regbuf_dma_map(9)rpcrdma_post_recvs(9)
and that's the whole page!! π this little icon lives in ./net/sunrpc/xprtrdma, the manual is dated October 2026, and it's brought to you by the Kernel API Manual β mwah, love u, go free those reps responsibly πππ§
π¦ 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