xprt_reques...ceive_locked(9)
π xprt_reques...ceive_locked(9)
okay so first things first β this one comes out of the Kernel API Manual (section 9, bestie, we're in kernel-space now β¨). And yes, the header literally shows the name all squished up like xprt_reques...ceive_locked(9) because the full thing is way too long to fit. The real, un-cut name is xprt_request_dequeue_receive_locked and it is a whole mouthful, so honestly? Respect the ellipsis. π
πΈ NAME πΈ
xprt_request_dequeue_receive_locked β removes a request from the receive queue. That's it, that's the whole job. Little icon, doing little icon things. π
β¨ SYNOPSIS β¨
void xprt_request_dequeue_receive_locked (struct rpc_task *task );
π«Ά ARGUMENTS π«Ά
taskβ the RPC task, aka the main character of this whole situation π
π₯ DESCRIPTION π₯
So here's the vibe check: the caller must hold xprt->queue_lock. Not "should", not "maybe", must. Lock it up first or you're in your flop era, no cap. π
π¦ SEE ALSO π¦
Kernel file ./net/sunrpc/xprt.c β that's the home base, the source file where this whole family lives π
and then the whole extended friend group, fr fr:
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_lookup_rqst(9), xprt_pin_rqst(9), xprt_unpin_rqst(9), xprt_request_enqueue_receive(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, that's the whole group chat, everyone's here, nobody's left on read π
lowkey reminder bestie: xprt->queue_lock first, always. that's the one rule and it's not optional π
okay that's the whole page, you ate that π this lil gem lives in ./net/sunrpc and the version fairy stamped it October 2026 β go forth and dequeue responsibly, mwah π
π¦ 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