1RDMA_GET_REMOTE_ECE(3) Librdmacm Programmer’s Manual RDMA_GET_REMOTE_ECE(3)
2
3
4
6 rdma_get_remote_ece - Get remote ECE paraemters as received from the
7 peer.
8
10 #include <rdma/rdma_cma.h>
11
12 int rdma_get_remote_ece(struct rdma_cm_id *id, struct ibv_ece *ece);
13
15 rdma_get_remote_ece() get ECE parameters as were received from the com‐
16 munication peer.
17
18 This function is suppose to be used by the users of external QPs. The
19 call needs to be performed before replying to the peer and needed to
20 allow for the passive side to know ECE options of other side.
21
22 Being used by external QP and RDMA_CM doesn’t manage that QP, the peer
23 needs to call to libibverbs API by itself.
24
25 Usual flow for the passive side will be:
26
27 • ibv_create_qp() <- create data QP.
28
29 • ece = rdma_get_remote_ece() <- get ECE options from remote peer
30
31 • ibv_set_ece(ece) <- set local ECE options with data received from the
32 peer.
33
34 • ibv_modify_qp() <- enable data QP.
35
36 • rdma_set_local_ece(ece) <- set desired ECE options after respective
37 libibverbs provider masked unsupported options.
38
39 • rdma_accept()/rdma_establish()/rdma_reject_ece()
40
42 *id RDMA communication identifier.
43
44 *ece ECE struct to be filled.
45
47 rdma_get_remote_ece() returns 0 on success, or -1 on error. If an er‐
48 ror occurs, errno will be set to indicate the failure reason.
49
51 rdma_cm(7), rdma_set_local_ece(3)
52
54 Leon Romanovsky <leonro@mellanox.com>
55
56
57
58librdmacm 2020-02-02 RDMA_GET_REMOTE_ECE(3)