mlx5dv_devx_create_eq(3)
π mlx5dv_devx_create_eq(3) β mlx5 Programmer's Manual
okay so bestie, welcome to the mlx5 Programmer's Manual β¨ this page covers two icons: mlx5dv_devx_create_eq and mlx5dv_devx_destroy_eq. one makes an EQ object, one yeets it. that's the whole vibe, let's get into it π«Ά
πΈ NAME πΈ
mlx5dv_devx_create_eqβ Create an EQ object πmlx5dv_devx_destroy_eqβ Destroy an EQ object π
β¨ SYNOPSIS β¨
#include <infiniband/mlx5dv.h>
struct mlx5dv_devx_eq *
mlx5dv_devx_create_eq(struct ibv_context *ibctx, const void *in, size_t inlen,
void *out, size_t outlen);
int mlx5dv_devx_destroy_eq(struct mlx5dv_devx_eq *eq);
π DESCRIPTION π
So you wanna Create / Destroy an EQ object, periodt. π
When you're creating one, you (the caller) are the main character here β you prepare the in/out mailboxes based on the device specification format. like, that's your job, no cap.
For the input mailbox, the caller needs to prepare all the fields except "eqc.log_page_size" and the pas list β those two get set by the driver, so don't touch, iykyk π.
And the "eqc.intr" field? you should use that from the output of mlx5dv_devx_alloc_msi_vector(). literally, that's where it comes from. β
π¦ ARGUMENTS π¦
ibctxβ the RDMA device context you're creating the action on. your canvas, your moment. π¨inβ a buffer holding the command's input data, provided in a device specification format.inlenβ the size of theinbuffer, in bytes.outβ a buffer holding the command's output data, according to the device specification format.outlenβ the size of theoutbuffer, in bytes.eqβ the EQ object you wanna work on.
and here's the struct, look at her:
struct mlx5dv_devx_eq {
void *vaddr;
};
vaddrβ the EQ VA that was allocated in the driver for. π§
π NOTES π
β οΈ important bestie:mlx5dv_devx_query_eqn()will not support vectors which are used bymlx5dv_devx_create_eq(). so like, don't even try it. π
π₯ RETURN VALUE π₯
Upon success, mlx5dv_devx_create_eq will return a new struct mlx5dv_devx_eq. slay. π On error, NULL will be returned and errno will be set. π
Upon success, mlx5dv_devx_destroy_eq will return 0. on error, errno will be returned.
π¨ If the error value isEREMOTEIO,outbox.statusandoutbox.syndromewill contain the command failure details. so check those, fr fr.
π SEE ALSO π
πΈ AUTHOR πΈ
Mark Zhang <markzhang@nvidia.com> β icon, legend, the moment. π«Ά
okay that's the whole page, you ate that π
β¨ this was mlx5, dated 2022-01-12, brought to you by the mlx5dv_devx_create_eq(3) girlies. go forth and create your EQs bestie ππ¦
π¦ where this page comes from
- alpine 3.24: rdma-core-doc 61.0-r0 Β· GPL-2.0-only OR BSD-2-Clause
- centos-stream 10: rdma-core-devel 62.0-3.el10 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms