mlx5dv_devx_alloc_msi_vector(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | ARGUMENTS | RETURN VALUE | AUTHOR | COLOPHON

mlx5dv_de...si_vector(3) mlx5 Programmer’s Manualmlx5dv_de...si_vector(3)

NAME         top

       mlx5dv_devx_alloc_msi_vector - Allocate an msi vector to be used
       for creating an EQ.

       mlx5dv_devx_free_msi_vector - Release an msi vector.

SYNOPSIS         top

              #include <infiniband/mlx5dv.h>

              struct mlx5dv_devx_msi_vector *
              mlx5dv_devx_alloc_msi_vector(struct ibv_context *ibctx);

              int mlx5dv_devx_free_msi_vector(struct mlx5dv_devx_msi_vector *msi);

DESCRIPTION         top

       Allocate or free an msi vector to be used for creating an EQ.

       The allocate API exposes a mlx5dv_devx_msi_vector object, which
       includes an msi vector and a fd.  The vector can be used as the
       “eqc.intr” field when creating an EQ, while the fd (created as
       non-blocking) can be polled to see once there is some data on that
       EQ.

ARGUMENTS         top

       ibctx  RDMA device context to create the action on.

       msi    The msi vector object to work on.

   msi_vector
              struct mlx5dv_devx_msi_vector {
                  int vector;
                  int fd;
              };

       vector The vector to be used when creating the EQ over the device
              specification.

       fd     The FD that will be used for polling.

RETURN VALUE         top

       Upon success mlx5dv_devx_alloc_msi_vector will return a new struct
       mlx5dv_devx_msi_vector; On error NULL will be returned and errno
       will be set.

       Upon success mlx5dv_devx_free_msi_vector will return 0, on error
       errno will be returned.

AUTHOR         top

       Mark Zhang ⟨markzhang@nvidia.com⟩

COLOPHON         top

       This page is part of the rdma-core (RDMA Core Userspace Libraries
       and Daemons) project.  Information about the project can be found
       at ⟨https://github.com/linux-rdma/rdma-core⟩.  If you have a bug
       report for this manual page, send it to
       linux-rdma@vger.kernel.org.  This page was obtained from the
       project's upstream Git repository
       ⟨https://github.com/linux-rdma/rdma-core.git⟩ on 2025-08-11.  (At
       that time, the date of the most recent commit that was found in
       the repository was 2025-08-04.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there is
       a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

mlx5                            2022-01-12       mlx5dv_de...si_vector(3)