.\" Automatically generated by Pandoc 2.18
.\"
.\" Define V font for inline verbatim, using C font in formats
.\" that render this, and otherwise B font.
.ie "\f[CB]x\f[]"x" \{\
. ftr V B
. ftr VI BI
. ftr VB B
. ftr VBI BI
.\}
.el \{\
. ftr V CR
. ftr VI CI
. ftr VB CB
. ftr VBI CBI
.\}
.TH "mlx5dv_pp_alloc / mlx5dv_pp_free" "3" "" "" ""
.hy
.SH NAME
.PP
mlx5dv_pp_alloc - Allocates a packet pacing entry
.PP
mlx5dv_pp_free - Frees a packet pacing entry
.SH SYNOPSIS
.IP
.nf
\f[C]
#include <infiniband/mlx5dv.h>

struct mlx5dv_pp *
mlx5dv_pp_alloc(struct ibv_context *context,
        size_t pp_context_sz,
        const void *pp_context,
        uint32_t flags);

void mlx5dv_pp_free(struct mlx5dv_pp *dv_pp);
\f[R]
.fi
.SH DESCRIPTION
.PP
Create / free a packet pacing entry which can be used for some device
commands over the DEVX interface.
.PP
The DEVX API enables direct access from the user space area to the mlx5
device driver, the packet pacing information is needed for few commands
where a packet pacing index is needed.
.SH ARGUMENTS
.TP
\f[I]context\f[R]
RDMA device context to work on, need to be opened with DEVX support by
using mlx5dv_open_device().
.TP
\f[I]pp_context_sz\f[R]
Length of \f[I]pp_context\f[R] input buffer.
.TP
\f[I]pp_context\f[R]
Packet pacing context according to the device specification.
.TP
\f[I]flags\f[R]
MLX5DV_PP_ALLOC_FLAGS_DEDICATED_INDEX: allocate a dedicated index.
.SS dv_pp
.IP
.nf
\f[C]
struct mlx5dv_pp {
    uint16_t index;
};
\f[R]
.fi
.TP
\f[I]index\f[R]
The device index to be used.
.SH RETURN VALUE
.PP
Upon success \f[I]mlx5dv_pp_alloc\f[R] returns a pointer to the created
packet pacing object, on error NULL will be returned and errno will be
set.
.SH SEE ALSO
.PP
\f[B]mlx5dv_open_device\f[R], \f[B]mlx5dv_devx_obj_create\f[R]
.SH AUTHOR
.PP
Yishai Hadas <yishaih@mellanox.com>
