mlx5dv_devx_free_uar(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | ARGUMENTS | RETURN VALUE | SEE ALSO | COLOPHON

mlx5dv_devx_all...v_devx_free_uar(3) mlx5dv_devx_all...v_devx_free_uar(3)

NAME         top

       mlx5dv_devx_alloc_uar - Allocates a DEVX UAR

       mlx5dv_devx_free_uar - Frees a DEVX UAR

SYNOPSIS         top

              #include <infiniband/mlx5dv.h>

              struct mlx5dv_devx_uar *mlx5dv_devx_alloc_uar(struct ibv_context *context,
                                                            uint32_t flags);

              void mlx5dv_devx_free_uar(struct mlx5dv_devx_uar *devx_uar);

DESCRIPTION         top

       Create / free a DEVX UAR which is needed for other device commands
       over the DEVX interface.

       The DEVX API enables direct access from the user space area to the
       mlx5 device driver, the UAR information is needed for few commands
       as of QP creation.

ARGUMENTS         top

       context
              RDMA device context to work on.

       flags  Allocation flags for the UAR.  MLX5DV_UAR_ALLOC_TYPE_BF:
              Allocate UAR with Blueflame properties.
              MLX5DV_UAR_ALLOC_TYPE_NC: Allocate UAR with non-cache
              properties.  MLX5DV_UAR_ALLOC_TYPE_NC_DEDICATED: Allocate a
              dedicated UAR with non-cache properties.

   devx_uar
              struct mlx5dv_devx_uar {
                  void *reg_addr;
                  void *base_addr;
                  uint32_t page_id;
                  off_t mmap_off;
                  uint64_t comp_mask;
              };

       reg_addr
              The write address of DB/BF.

       base_addr
              The base address of the UAR.

       page_id
              The device page id to be used.

       mmap_off
              The mmap offset parameter to be used for re-mapping, to be
              used by a secondary process.

RETURN VALUE         top

       Upon success mlx5dv_devx_alloc_uar will return a new struct
       mlx5dv_devx_uar, on error NULL will be returned and errno will be
       set.

SEE ALSO         top

       mlx5dv_open_device, mlx5dv_devx_obj_create

       #AUTHOR

       Yishai Hadas ⟨yishaih@mellanox.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

                                     mlx5dv_devx_all...v_devx_free_uar(3)