rvt_qp_iter_init(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

rvt_qp_iter_init β€” initial for QP iteration. Welcome to rvt_qp_iter_init(9), from the Kernel API Manual, bestie β€” yes we are in the kernel docs and the vibes are immaculate ✨

πŸ¦‹ SYNOPSIS πŸ¦‹

struct rvt_qp_iter * rvt_qp_iter_init (struct rvt_dev_info *rdi , u64 v
, void (*cb)(struct rvt_qp *qp, u64 v) );

That's the exact signature, comma spacing and all β€” it's literally the manual's house style πŸ’…

πŸŽ€ ARGUMENTS πŸŽ€

  • rdi β€” the rvt devinfo. Like, the devinfo in question, bestie.
  • v β€” a u64 value. Sixty-four bits of "here's a value," lowkey.
  • cb β€” user-defined callback. Your callback, your rules, fr fr.

πŸ’œ DESCRIPTION πŸ’œ

This returns an iterator suitable for iterating QPs in the system. No cap: an iterator, for QPs, in the system. Iconic.

The cb is a user-defined callback, and v is a 64-bit value passed to and relevant for processing in the cb. An example use case would be to alter QP processing based on criteria not part of the rvt_qp. iykyk.

🚨 Real talk: use cases that require memory allocation to succeed must preallocate appropriately. This is not a "we'll figure it out in the callback" situation, bestie β€” preallocate appropriately, periodt.

πŸ‘‘ RETURN πŸ‘‘

Returns a pointer to an rvt_qp_iter or NULL. That's it. That's the return: a pointer or NULL, and that's the whole mood.

🌈 SEE ALSO 🌈

Kernel file ./drivers/infiniband/sw/rdmavt/qp.c β€” plus the whole squad:


okay bye bestie πŸ’– this has been rvt_qp_iter_init(9) from the Kernel API Manual, source ./drivers/infiniband/sw/rdmavt, dated October 2026 β€” slay, and remember: preallocate appropriately πŸŽ€βœ¨

πŸ“¦ where this page comes from