MLX5DV_MODIFY_QP_SCHED_ELEM(3)

Welcome to the mlx5 Programmer’s Manual, bestie β€” this is the page for mlx5dv_modify_qp_sched_elem(3), and it’s lowkey all about hooking a QP up to scheduling elements. πŸ’…βœ¨

πŸ’– NAME πŸ’–

mlx5dv_modify_qp_sched_elem β€” Connect a QP with a requestor and/or a responder scheduling element. πŸŽ€

🌸 SYNOPSIS 🌸

              int mlx5dv_modify_qp_sched_elem(struct ibv_qp *qp,
                              struct mlx5dv_sched_leaf *requestor,
                              struct mlx5dv_sched_leaf *responder);

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so the QP scheduling element (SE) is the thing that allows the association of a QP to an SE tree. The SE itself is described in the mlx5dv_sched_node_create(3) man page β€” that’s where the SE lore lives. ✨

By default, all QPs are not associated to SE. The default setting is ensuring fair bandwidth allocation with no maximum bandwidth limiting. So like, fair vibes by default, no bandwidth cap. 🫢

A QP can be associated to a requestor and/or a responder SE following the IB spec definition. Requestor side, responder side, or both β€” the spec is the blueprint. πŸ’…

πŸŽ€ RETURN VALUE πŸŽ€

Upon success, 0 is returned; on a failure, you get the value of errno. Simple slay. 😌

🫢 SEE ALSO 🫢

πŸ‘‘ AUTHOR πŸ‘‘

  • Mark Zhang <markzhang@nvidia.com>
  • Ariel Almog <ariela@nvidia.com>

Big cute sign-off from the footer: this page is from the mlx5 Programmer’s Manual, source/version mlx5, dated 2020-9-22, and the footer’s abbreviated page name is mlx5dv_mod..._sched_elem(3). Bye bestie, go schedule something iconic. πŸ’–πŸŒˆ

πŸ“¦ where this page comes from