mlx5dv_alloc_dm(3) — Linux manual page

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

mlx5dv_alloc_dm(3)       mlx5 Programmer’s Manual      mlx5dv_alloc_dm(3)

NAME         top

       mlx5dv_alloc_dm - allocates device memory (DM)

SYNOPSIS         top

              #include <infiniband/mlx5dv.h>

              struct ibv_dm *mlx5dv_alloc_dm(struct ibv_context *context,
                                 struct ibv_alloc_dm_attr *dm_attr,
                                 struct mlx5dv_alloc_dm_attr *mlx5_dm_attr)

DESCRIPTION         top

       mlx5dv_alloc_dm() allocates device memory (DM) with specific
       driver properties.

ARGUMENTS         top

       Please see ibv_alloc_dm(3) man page for context and dm_attr.

   mlx5_dm_attr
              struct mlx5dv_alloc_dm_attr {
                  enum mlx5dv_alloc_dm_type type;
                  uint64_t comp_mask;
              };

       type   The device memory type user wishes to allocate:

              MLX5DV_DM_TYPE_MEMIC Device memory of type MEMIC - On-Chip
              memory that can be allocated and used as memory region for
              transmitting/receiving packet directly from/to the memory
              on the chip.

              MLX5DV_DM_TYPE_STEERING_SW_ICM Device memory of type
              STEERING SW ICM - This memory is used by the device to
              store the packet steering tables and rules.  Can be used
              for direct table and steering rules creation when allocated
              by a privileged user.

              MLX5DV_DM_TYPE_HEADER_MODIFY_SW_ICM Device memory of type
              HEADER MODIFY SW ICM - This memory is used by the device to
              store the packet header modification tables and rules.  Can
              be used for direct table and header modification rules
              creation when allocated by a privileged user.

              MLX5DV_DM_TYPE_HEADER_MODIFY_PATTERN_SW_ICM Device memory
              of type HEADER MODIFY PATTERN SW ICM - This memory is used
              by the device to store packet header modification
              patterns/templates.  Can be used for direct table and
              header modification rules creation when allocated by a
              privileged user.

              MLX5DV_DM_TYPE_ENCAP_SW_ICM Device memory of type PACKET
              ENCAP SW ICM - This memory is used by the device to store
              packet encap data.  Can be used for packet encap reformat
              rules creation when allocated by a privileged user.

       comp_mask
              Bitmask specifying what fields in the structure are valid:
              Currently reserved and should be set to 0.

RETURN VALUE         top

       mlx5dv_alloc_dm() returns a pointer to the created DM, on error
       NULL will be returned and errno will be set.

SEE ALSO         top

       ibv_alloc_dm(3),

AUTHOR         top

       Ariel Levkovich ⟨lariel@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

mlx5                             2018-9-1              mlx5dv_alloc_dm(3)

Pages that refer to this page: mlx5dv_dm_map_op_addr(3)