xprt_rdma_connect_worker(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– xprt_rdma_connect_worker(9) β€” the kernel API manual, but make it make sense πŸŽ€

okay bestie, so this one lives in the Kernel API Manual (yes, the kernel has a manual, she's iconic like that) and it's all about setting up an RDMA connection in the background β€” like when you order food and then go about your life instead of staring at the app. literally that energy. ✨


✨ NAME ✨

xprt_rdma_connect_worker β€” establish connection in the background πŸ¦‹

like, the whole point. connect, but off to the side, no drama in the main thread.


🌸 SYNOPSIS 🌸

void xprt_rdma_connect_worker (struct work_struct *work );

that's it. that's the whole signature. she's short and she knows it. πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • work β€” worker thread context 🧡 (this is your little work-item carry-on bag: everything the worker needs to know it's this job, bestie.)

πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the vibe check on what actually goes down:

The requester holds the xprt's send lock πŸ”’ β€” not in a toxic way, in a "nobody touch this transport while we're mid-connection, thanks" way. That lock is literally there to prevent activity on this transport while a fresh connection is being established. no cap, that's the whole reason.

Meanwhile all the RPC tasks are just… sleeping 😴 on the xprt's pending queue, waiting for the connect to complete. like a group chat where everyone's left on read until the link comes up. then they all wake up and start spamming requests. iconic behavior honestly. 🫢

ngl the key thing to internalize: connection setup happens in the background, the send lock guards the transport during it, and the queued RPC tasks are asleep the whole time. πŸ’œ

🌈 SEE ALSO 🌈

that's the whole friend group. they all show up to the function together. slay. πŸ”₯


okay and finally β€” the little footer moment πŸ’Œ: this whole page comes from ./net/sunrpc/xprtrdma and it's dated October 2026. save the date, bestie πŸ“. go forth and connect in the background. periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from