1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
.\" Automatically generated by Pandoc 2.9.2.1
.\"
.TH "EFADV_CREATE_QP_EX" "3" "2019-08-06" "efa" "EFA Direct Verbs Manual"
.hy
.SH NAME
.PP
efadv_create_qp_ex - Create EFA specific extended Queue Pair
.SH SYNOPSIS
.IP
.nf
\f[C]
#include <infiniband/efadv.h>
struct ibv_qp *efadv_create_qp_ex(struct ibv_context *ibvctx,
struct ibv_qp_init_attr_ex *attr_ex,
struct efadv_qp_init_attr *efa_attr,
uint32_t inlen);
\f[R]
.fi
.SH DESCRIPTION
.PP
\f[B]efadv_create_qp_ex()\f[R] creates device-specific extended Queue
Pair.
.PP
The argument attr_ex is an ibv_qp_init_attr_ex struct, as defined in
<infiniband/verbs.h>.
.PP
Use ibv_qp_to_qp_ex() to get the ibv_qp_ex for accessing the send ops
iterator interface, when QP create attr IBV_QP_INIT_ATTR_SEND_OPS_FLAGS
is used.
.PP
Scalable Reliable Datagram (SRD) transport provides reliable
out-of-order delivery, transparently utilizing multiple network paths to
reduce network tail latency.
Its interface is similar to UD, in particular it supports message size
up to MTU, with error handling extended to support reliable
communication.
.PP
Compatibility is handled using the comp_mask and inlen fields.
.IP
.nf
\f[C]
struct efadv_qp_init_attr {
uint64_t comp_mask;
uint32_t driver_qp_type;
uint16_t flags;
uint8_t sl;
uint8_t reserved[1];
};
\f[R]
.fi
.TP
\f[I]inlen\f[R]
In: Size of struct efadv_qp_init_attr.
.TP
\f[I]comp_mask\f[R]
Compatibility mask.
.TP
\f[I]driver_qp_type\f[R]
The type of QP to be created:
.RS
.PP
EFADV_QP_DRIVER_TYPE_SRD: Create an SRD QP.
.RE
.TP
\f[I]flags\f[R]
.IP
.nf
\f[C]
A bitwise OR of the values described below.
\f[R]
.fi
.RS
.PP
EFADV_QP_FLAGS_UNSOLICITED_WRITE_RECV: Receive WRs will not be consumed
for RDMA write with imm.
.RE
.TP
\f[I]sl\f[R]
Service Level - 0 value implies default level.
.SH RETURN VALUE
.PP
efadv_create_qp_ex() returns a pointer to the created QP, or NULL if the
request fails.
.SH SEE ALSO
.PP
\f[B]efadv\f[R](7), \f[B]ibv_create_qp_ex\f[R](3)
.SH AUTHORS
.PP
Gal Pressman <galpress@amazon.com> Daniel Kranzdorf
<dkkranzd@amazon.com>
|