srpt_alloc_ioctx_ring(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

srpt_alloc_ioctx_ring β€” okay so bestie, this is the function that allocates a ring of SRPT I/O context structures. That's literally the whole vibe: ring, I/O contexts, allocated ✨ (also hi, you're in section 9 of the Kernel API Manual, love that for us πŸŽ€)


🌸 SYNOPSIS 🌸

struct srpt_ioctx ** srpt_alloc_ioctx_ring (struct srpt_device *sdev ,
int ring_size , int ioctx_size , struct kmem_cache *buf_cache , int
alignment_offset , enum dma_data_direction dir );

πŸ¦‹ ARGUMENTS πŸ¦‹

Bestie, the tea on the parameters, one by one, no skips πŸ‘‘

  • sdev β€” the device you're allocating the I/O context ring for. Like, the whole reason this ring exists, iykyk.
  • ring_size β€” how many elements go in the I/O context ring. Count them, don't guess πŸ’…
  • ioctx_size β€” the size of the I/O context. Yes, it's called that. We love a literal king.
  • buf_cache β€” the I/O buffer cache. Slay, cache.
  • alignment_offset β€” the offset in each ring buffer at which the SRP information unit starts. This one's doing the most, honestly, and we respect it 🫢
  • dir β€” DMA data direction. Direction matters, always has 🌈

🌟 SEE ALSO 🌟

First things first, the kernel file to go peek at: ./drivers/infiniband/ulp/srpt/ib_srpt.c πŸ”₯

And now the friend group, the whole entire squad, in order, because we do not leave anyone out πŸ‘‘:


fr fr, go read the whole squad, they're all iconic and they all live in the same corner of the kernel πŸ’€βœ¨

And that's the page, bestie 🧚 this little masterpiece comes to you from ./drivers/infiniband/ulp/srpt, dated October 2026 β€” periodt, take care of her πŸ’œπŸŽ€

πŸ“¦ where this page comes from