xprt_get(9)
π xprt_get(9) β the Kernel API Manual, but make it make sense
okay so bestie, welcome to the <pink>Kernel API Manual</pink> β¨ this one's called xprt_get(9) and it's short, sweet, and honestly kind of a baddie for it. No cap, we're in and out. π
πΈ NAME πΈ
xprt_get β return a reference to an RPC transport.
literally that's the whole job. she shows up, hands you a reference to an RPC transport, leaves. iconic behavior honestly π
β¨ SYNOPSIS β¨
struct rpc_xprt * xprt_get (struct rpc_xprt *xprt );
look at that return type. struct rpc_xprt * on the left, function named xprt_get, and one single argument in the parentheses. tidy. clean. the way that it's formatted EXACTLY like this and you should copy it exactly like this π«Ά
π¦ ARGUMENTS π¦
xprtβ pointer to the transport π« yeah that's it. one (1) argument. she's low maintenance, she'sstruct rpc_xprt *, she's the whole personality of this function.
reminder bestie: the funny formatting β the space before that closing paren in xprt_get (struct rpc_xprt *xprt ); β that's on purpose. keep it. don't "fix" it, i'm begging π
π SEE ALSO π
so this is the part where the page absolutely goes OFF and lists basically the entire sunrpc friend group π€ all of these live in the kernel file ./net/sunrpc/xprt.c:
- registration & transport creation:
xprt_register_transport(9),xprt_unregister_transport(9),xprt_find_transport_ident(9),xprt_create_transport(9),xprt_destroy(9) - reserving & releasing the transport:
xprt_reserve_xprt(9),xprt_release_xprt(9),xprt_release_xprt_cong(9),xprt_reserve(9),xprt_retry_reserve(9),xprt_release(9) - congestion stuff:
xprt_request_get_cong(9),xprt_release_rqst_cong(9),xprt_adjust_cwnd(9) - waking & buffer space:
xprt_wake_pending_tasks(9),xprt_wait_for_buffer_space(9),xprt_write_space(9) - timeouts, connecting & disconnecting:
xprt_adjust_timeout(9),xprt_disconnect_done(9),xprt_schedule_autoclose_locked(9),xprt_force_disconnect(9),xprt_conditional_disconnect(9),xprt_connect(9),xprt_reconnect_delay(9),xprt_reconnect_backoff(9) - rqst lookup, pinning & completion:
xprt_lookup_rqst(9),xprt_pin_rqst(9),xprt_unpin_rqst(9),xprt_update_rtt(9),xprt_complete_rqst(9) - the receive side:
xprt_request_enqueue_receive(9),xprt_request_dequeue_receive_locked(9),xprt_request_wait_receive(9),xprt_wait_for_reply_request_def(9),xprt_wait_for_reply_request_rtt(9) - the transmit side:
xprt_request_enqueue_transmit(9),xprt_request_dequeue_transmit_locked(9),xprt_request_dequeue_transmit(9),xprt_request_dequeue_xprt(9),xprt_request_prepare(9),xprt_request_need_retransmit(9),xprt_prepare_transmit(9),xprt_request_transmit(9),xprt_transmit(9),xprt_add_backlog_noncongested(9) - and the one that closes the circle:
xprt_put(9)
that's 46 whole references babes. i listed every single one. iykyk π§
and that's the page!! short manpage, big energy. go read the source file, it's all in there π¦
β signed off with love from the <lavender>./net/sunrpc</lavender> source tree, <mint>October 2026</mint> edition, <pink>xprt_get(9)</pink> era πβ¨π
π¦ 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