mlx5dv_alloc_dm (3) Linux Manual Page
mlx5dv_alloc_dm – allocates device memory (DM)
Synopsis
#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
mlx5dv_alloc_dm() allocates device memory (DM) with specific driver properties.Arguments
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_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.
- comp_mask
- Bitmask specifying what fields in the structure are valid: Currently reserved and should be set to 0.
