STRUCT SRP_LOGIN_REQ_RDMA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct srp_login_req_rdma(9) πŸ¦‹

okay so bestie, this is a page from the Kernel API Manual and it's about struct srp_login_req_rdma β€” the RDMA/CM login parameters situation. yes it's as niche as it sounds and yes we're gonna get through it together πŸ’–


✨ NAME ✨

struct srp_login_req_rdma β€” RDMA/CM login parameters. that's literally it. that's the whole name section. short and iconic πŸŽ€


🌸 SYNOPSIS 🌸

here's the whole struct, copy it exactly, no freestyling:

struct srp_login_req_rdma {
    u64 tag;
    __be16 req_buf_fmt;
    u8 req_flags;
    u8 opcode;
    __be32 req_it_iu_len;
    u8 initiator_port_id[16];
    u8 target_port_id[16];
    __be16 imm_data_offset;
    u8 reserved[6];
 };

look at all those fields. tag, req_buf_fmt, req_flags, opcode, req_it_iu_len, initiator_port_id[16], target_port_id[16], imm_data_offset, and reserved[6]. every single one of them is there and none of them got left behind 🫢


πŸ’… Members πŸ’…

so the original page has a Members heading right here, and ngl it doesn't list anything under it β€” the fields are all up in the struct in the synopsis above. so like… go look at those. they're cute, they're listed, they're accounted for ✨


πŸŽ€ Description πŸŽ€

okay here's the actual tea, and it's a numbers moment so pay attention πŸ”₯

RDMA/CM over InfiniBand can only carry 92 - 36 = 56 bytes of private data. that's the budget. that's all you get. 😭

and so, the srp_login_req_rdma structure contains the same information as srp_login_req but with the reserved data removed. that's the whole vibe β€” same info, reserved stuff yeeted, because the wire literally cannot hold any more. it's giving "pack light or don't pack at all" πŸ’€


🌈 SEE ALSO 🌈

  • Kernel file ./include/scsi/srp.h β€” go read it, it's right there, it's the source of truth πŸ‘‘

lowkey reminder bestie: that 92 - 36 = 56 math is not a suggestion, it's the ceiling. respect the byte budget or the bytes will disrespect you πŸ’œ

and that's the page!! brought to you by ./include/scsi, dated October 2026, and it's the struct srp_login_req_rdma(9) manual page, mwah πŸ’…βœ¨πŸ“

πŸ“¦ where this page comes from