.\" Automatically generated by Pandoc 3.1.12.1 .\" .TH "mlx5dv_devx_qp[/cq/srq/wq/ind_tbl]_modify / query" "3" "" "" "" .SH NAME mlx5dv_devx_qp_modify \- Modifies a verbs QP via DEVX .PP mlx5dv_devx_qp_query \- Queries a verbs QP via DEVX .PP mlx5dv_devx_cq_modify \- Modifies a verbs CQ via DEVX .PP mlx5dv_devx_cq_query \- Queries a verbs CQ via DEVX .PP mlx5dv_devx_srq_modify \- Modifies a verbs SRQ via DEVX .PP mlx5dv_devx_srq_query \- Queries a verbs SRQ via DEVX .PP mlx5dv_devx_wq_modify \- Modifies a verbs WQ via DEVX .PP mlx5dv_devx_wq_query \- Queries a verbs WQ via DEVX .PP mlx5dv_devx_ind_tbl_modify \- Modifies a verbs indirection table via DEVX .PP mlx5dv_devx_ind_tbl_query \- Queries a verbs indirection table via DEVX .SH SYNOPSIS .IP .EX #include \f[B]\f[R] int mlx5dv_devx_qp_modify(\f[B]struct\f[R] ibv_qp *qp, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_qp_query(\f[B]struct\f[R] ibv_qp *qp, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_cq_modify(\f[B]struct\f[R] ibv_cq *cq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_cq_query(\f[B]struct\f[R] ibv_cq *cq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_srq_modify(\f[B]struct\f[R] ibv_srq *srq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_srq_query(\f[B]struct\f[R] ibv_srq *srq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_wq_modify(\f[B]struct\f[R] ibv_wq *wq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_wq_query(\f[B]struct\f[R] ibv_wq *wq, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_ind_tbl_modify(\f[B]struct\f[R] ibv_rwq_ind_table *ind_tbl, const void *in, size_t inlen, void *out, size_t outlen); int mlx5dv_devx_ind_tbl_query(\f[B]struct\f[R] ibv_rwq_ind_table *ind_tbl, const void *in, size_t inlen, void *out, size_t outlen); .EE .SH DESCRIPTION Modify / query a verb object over the DEVX interface. .PP The DEVX API enables direct access from the user space area to the mlx5 device driver by using the KABI mechanism. The main purpose is to make the user space driver as independent as possible from the kernel so that future device functionality and commands can be activated with minimal to none kernel changes. .PP The above APIs enables modifying/querying a verb object via the DEVX interface. This enables interoperability between verbs and DEVX. As such an application can use the create method from verbs (e.g.\ ibv_create_qp) and modify and query the created object via DEVX (e.g.\ mlx5dv_devx_qp_modify). .SH ARGUMENTS .TP \f[I]qp/cq/wq/srq/ind_tbl\f[R] The ibv_xxx object to issue the action on. .TP \f[I]in\f[R] A buffer which contains the command\[cq]s input data provided in a device specification format. .TP \f[I]inlen\f[R] The size of \f[I]in\f[R] buffer in bytes. .TP \f[I]out\f[R] A buffer which contains the command\[cq]s output data according to the device specification format. .TP \f[I]outlen\f[R] The size of \f[I]out\f[R] buffer in bytes. .SH RETURN VALUE Upon success 0 is returned or the value of errno on a failure. .PP If the error value is EREMOTEIO, outbox.status outbox.syndrome will contain the command failure details. .SH SEE ALSO \f[B]mlx5dv_open_device\f[R], \f[B]mlx5dv_devx_obj_create\f[R] .PP #AUTHOR .PP Yishai Hadas \c .MT yishaih@mellanox.com .ME \c