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