xprt_lookup_rqst(9)
π xprt_lookup_rqst β the Kernel API Manual girlie's guide β¨
okay so picture this: you're deep in the Kernel API Manual, right, and you need to find the RPC request that matches an XID. that's it. that's the whole vibe. this function is the friend who knows exactly who's who in the group chat π
πΈ NAME πΈ
xprt_lookup_rqst β bestie's whole job is finding an RPC request corresponding to an XID. literally that. no cap π
β¨ SYNOPSIS β¨
struct rpc_rqst * xprt_lookup_rqst (struct rpc_xprt *xprt , __be32 xid
);
like, she takes an xprt and an xid, and hands you back a struct rpc_rqst *. iconic signature tbh π«Ά
π¦ ARGUMENTS π¦
xprtβ the transport on which the original request was transmitted. yes, that transport. the one that sent the thing πxidβ the RPC XID of the incoming reply. the little name tag that says "hi i'm the reply you're looking for" π
π DESCRIPTION π
Caller holds xprt->queue_lock. periodt. no exceptions, no "oops i forgot", the lock is yours to hold before you call her, mwah π
that's genuinely the whole description and honestly? she said what she said. short, sweet, and absolutely non-negotiable β the way that a function can just have ONE rule and still be main character energy ππ₯
β SEE ALSO β
okay bestie, buckle up, because the family tree is LONG and every single one of these is invited to the party π§β¨ source of truth is the kernel file ./net/sunrpc/xprt.c and here's everyone:
xprt_register_transport(9)xprt_unregister_transport(9)xprt_find_transport_ident(9)xprt_reserve_xprt(9)xprt_release_xprt(9)xprt_release_xprt_cong(9)xprt_request_get_cong(9)xprt_release_rqst_cong(9)xprt_adjust_cwnd(9)xprt_wake_pending_tasks(9)xprt_wait_for_buffer_space(9)xprt_write_space(9)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)xprt_pin_rqst(9)xprt_unpin_rqst(9)xprt_request_enqueue_receive(9)xprt_request_dequeue_receive_locked(9)xprt_update_rtt(9)xprt_complete_rqst(9)xprt_wait_for_reply_request_def(9)xprt_wait_for_reply_request_rtt(9)xprt_request_wait_receive(9)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)xprt_reserve(9)xprt_retry_reserve(9)xprt_release(9)xprt_create_transport(9)xprt_destroy(9)xprt_get(9)xprt_put(9)
like i said. LONG. but we love a rich extended universe ππ
anyway that's the page bestie, and before you go β this little masterpiece lives in the source directory ./net/sunrpc and it's dated October 2026, so mark your calendars accordingly, drink some water, hold that xprt->queue_lock, and slay πΈπ¦π
β¨
π¦ 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