-
Notifications
You must be signed in to change notification settings - Fork 655
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
efa: Add create extended QP direct verb
Add direct verb to create extended IBV QP, with specific driver properties. With the EFA extended init attributes, users can create extended QP with type SRD (Scalable Reliable Datagram). Signed-off-by: Daniel Kranzdorf <[email protected]> Reviewed-by: Firas JahJah <[email protected]> Reviewed-by: Yossi Leybovich <[email protected]> Signed-off-by: Gal Pressman <[email protected]>
- Loading branch information
1 parent
0fb4e37
commit 885531b
Showing
5 changed files
with
121 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,6 +8,7 @@ EFA_1.0 { | |
|
||
EFA_1.1 { | ||
global: | ||
efadv_create_qp_ex; | ||
efadv_query_ah; | ||
efadv_query_device; | ||
} EFA_1.0; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
--- | ||
layout: page | ||
title: EFADV_CREATE_QP_EX | ||
section: 3 | ||
tagline: Verbs | ||
date: 2019-08-06 | ||
header: "EFA Direct Verbs Manual" | ||
footer: efa | ||
--- | ||
|
||
# NAME | ||
|
||
efadv_create_qp_ex - Create EFA specific extended Queue Pair | ||
|
||
# SYNOPSIS | ||
|
||
```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); | ||
``` | ||
# DESCRIPTION | ||
**efadv_create_qp_ex()** creates device-specific extended Queue Pair. | ||
The argument attr_ex is an ibv_qp_init_attr_ex struct, | ||
as defined in <infiniband/verbs.h>. | ||
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. | ||
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. | ||
Compatibility is handled using the comp_mask and inlen fields. | ||
```c | ||
struct efadv_qp_init_attr { | ||
uint64_t comp_mask; | ||
uint32_t driver_qp_type; | ||
uint8_t reserved[4]; | ||
}; | ||
``` | ||
|
||
*inlen* | ||
: In: Size of struct efadv_qp_init_attr. | ||
|
||
*comp_mask* | ||
: Compatibility mask. | ||
|
||
*driver_qp_type* | ||
: The type of QP to be created: | ||
|
||
EFADV_QP_DRIVER_TYPE_SRD: | ||
Create an SRD QP. | ||
|
||
# RETURN VALUE | ||
|
||
efadv_create_qp_ex() returns a pointer to the created QP, or NULL if the request fails. | ||
|
||
# SEE ALSO | ||
|
||
**efadv**(7), **ibv_create_qp_ex**(3) | ||
|
||
# AUTHORS | ||
|
||
Gal Pressman <[email protected]> | ||
Daniel Kranzdorf <[email protected]> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters