smb2_read_rdma(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… smb2_read_rdma β€” the Kernel API Manual, bestie edition πŸ’…

okay so this is a page from the Kernel API Manual (the 9 section, kernel internals, iykyk) and it's literally all about smb2_read_rdma. Buckle up πŸŽ€


✨ NAME ✨

smb2_read_rdma β€” transfers READ data to client RDMA buffers πŸ¦‹

Like, the actual vibe: you got READ data, the client has RDMA buffers, this function does the handoff. No cap.


🌸 SYNOPSIS 🌸

ssize_t smb2_read_rdma (struct ksmbd_work *work , struct smb2_read_req
*req , void *data_buf , size_t length );

Returns an ssize_t β€” remember that, it comes back later πŸ‘€


πŸ’– ARGUMENTS πŸ’–

  • work β€” the request work item. Your main character struct, fr.
  • req β€” the READ request, and it's the one holding the client descriptors. lowkey important.
  • data_buf β€” the data to transfer. That's the payload, bestie πŸ“
  • length β€” the data length. Yes it's just the length. She's straightforward, we stan.

πŸ”₯ RETURN πŸ”₯

The transferred length on success πŸŽ‰ β€” otherwise a negative errno 😭 (so like, if you see a negative number, that's not a length, that's a sad little error code. vibe check failed, basically πŸ’€).


πŸ‘‘ SEE ALSO πŸ‘‘

okay girl, this list is LONG, so let's go. These all live in the Kernel file ./fs/smb/server/smb2pdu.c, and every single one of them is iconic in her own way:

and finally, saving the best for last:

That's sixty-something functions and yes, I typed every single one, because we don't skip entries in this house ✨


okay that's the whole page, bestie β€” go forth and transfer that READ data 🌈

sign-off time πŸŽ€ this one's from the Kernel API Manual, source dir ./fs/smb/server, dated October 2026 β€” and it's smb2_read_rdma(9) all the way through, periodt πŸ’œ

πŸ“¦ where this page comes from