srpt_get_desc_tbl(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay bestie, welcome to srpt_get_desc_tbl(9) from the Kernel API Manual πŸ’– β€” the function that is literally here to parse the data descriptors of a SRP_CMD request. No cap. πŸ¦‹

πŸ“œ SYNOPSIS πŸ“œ

int srpt_get_desc_tbl (struct srpt_recv_ioctx *recv_ioctx , struct
       srpt_send_ioctx *ioctx , struct srp_cmd *srp_cmd , enum
       dma_data_direction *dir , struct scatterlist **sg , unsigned int *sg_cnt
       , u64 *data_len , u16 imm_data_offset );

🫢 ARGUMENTS 🫢

okay, meet the cast, they all matter: πŸ’…

  • recv_ioctx β€” I/O context associated with the received command srp_cmd.
  • ioctx β€” I/O context that will be used for responding to the initiator.
  • srp_cmd β€” Pointer to the SRP_CMD request data.
  • dir β€” Pointer to the variable to which the transfer direction will be written.
  • sg β€” [out] scatterlist for the parsed SRP_CMD.
  • sg_cnt β€” [out] length of sg.
  • data_len β€” Pointer to the variable to which the total data length of all descriptors in the SRP_CMD request will be written.
  • imm_data_offset β€” [in] Offset in SRP_CMD requests at which immediate data starts.

πŸ’… DESCRIPTION πŸ’…

okay so this function initializes ioctx->nrbuf and ioctx->r_bufs. That is the main-character job, periodt. πŸ‘‘

It returns -EINVAL when the SRP_CMD request contains inconsistent descriptors; -ENOMEM when memory allocation fails; and zero upon success. 🫑

🌈 SEE ALSO 🌈

the kernel file is right here, bestie:

  • Kernel file ./drivers/infiniband/ulp/srpt/ib_srpt.c

and the whole friend group is tagging along: πŸ’–


and that is the whole page, bestie 🫢 β€” source ./drivers/infiniband/ulp/srpt, date October 2026, page srpt_get_desc_tbl(9). πŸ’–βœ¨

πŸ“¦ where this page comes from