rpcrdma_marshal_req(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, welcome to the rpcrdma_marshal_req(9) page from the Kernel API Manual β€” we're gonna make this make sense, no cap πŸ’…βœ¨


πŸŽ€ NAME πŸŽ€

rpcrdma_marshal_req β€” Marshal and send one RPC request 🫢


✨ SYNOPSIS ✨

int rpcrdma_marshal_req (struct rpcrdma_xprt *r_xprt , struct rpc_rqst *rqst );

🌸 ARGUMENTS 🌸

  • r_xprt β€” controlling transport πŸš‚
  • rqst β€” RPC request to be marshaled πŸ“¦

πŸ’– DESCRIPTION πŸ’–

so for the RPC in rqst, this function is literally doing all of this:

  • Chooses the transfer mode (eg., RDMA_MSG or RDMA_NOMSG) πŸŒ€
  • Registers Read, Write, and Reply chunks 🧩
  • Constructs the transport header πŸ› οΈ
  • Posts a Send WR to send the transport header and request πŸ“€

like it's giving "full request glow-up" energy, fr fr πŸ”₯


⭐ RETURN ⭐

  • 0 if the RPC was sent successfully πŸŽ‰
  • -ENOTCONN if the connection was lost 😭
  • -EAGAIN if the caller should call again with the same arguments πŸ”
  • -ENOBUFS if the caller should call again after a delay ⏳
  • -EMSGSIZE if the transport header is too small πŸ“
  • -EIO if a permanent problem occurred while marshaling πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹


mwah πŸ’‹ this page's source/version is ./net/sunrpc/xprtrdma, dated October 2026, and that's the wrap bestie πŸ«ΆπŸŽ€

πŸ“¦ where this page comes from