svc_rdma_xdr_decode_req(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… svc_rdma_xdr_decode_req (9) β€” like, the Kernel API Manual page, bestie ✨

okay so welcome to the Kernel API Manual entry for svc_rdma_xdr_decode_req, and yes we are about to decode a transport header together, no cap πŸŽ€


🌸 NAME 🌸

svc_rdma_xdr_decode_req β€” decodes the transport header, that's literally her whole job πŸ’…


✨ SYNOPSIS ✨

int svc_rdma_xdr_decode_req (struct xdr_buf *rq_arg , struct
svc_rdma_recv_ctxt *rctxt );

🫢 ARGUMENTS 🫢

  • rq_arg β€” the xdr_buf holding the ingress RPC/RDMA message, aka where the message comes in πŸ¦‹
  • rctxt β€” the state of decoding, the little vibe check of what's going on rn

πŸ”₯ DESCRIPTION πŸ”₯

So on entry, xdr->head[0].iov_base points to the first byte of the RPC-over-RDMA transport header. Periodt. That's the starting line πŸ“

On successful exit, head[0] points to the first byte past the RPC-over-RDMA header. And for RDMA_MSG, that is the RPC message, iykyk πŸ’–

The length of the RPC-over-RDMA header is returned. That's the whole return situation, bestie ✨

Assumptions, because we always gotta be honest about our assumptions πŸ₯Ί

  • The transport header is entirely contained in the head iovec. Like, entirely. No sneaky bits hiding elsewhere πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./net/sunrpc/xprtrdma/svc_rdma_recvfrom.c, plus the whole friend group:


and that's the page, bestie 🧚 this one's filed under ./net/sunrpc/xprtrdma, dated October 2026, and it's the svc_rdma_xdr_decode_req(9) girlie herself signing off πŸ’œ slay πŸŽ€

πŸ“¦ where this page comes from