RDMA Aware Networks Programming User Manual Rev 1.4
Mellanox Technologies
5
4.1.2 rdma_destroy_event_channel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.2 Connection Manager (CM) ID Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.2.1 rdma_create_id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.2.2 rdma_destroy_id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.2.3 rdma_migrate_id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.2.4 rdma_set_option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.2.5 rdma_create_ep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.2.6 rdma_destroy_ep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2.7 rdma_resolve_addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.2.8 rdma_bind_addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.2.9 rdma_resolve_route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.2.10 rdma_listen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.2.11 rdma_connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.2.12 rdma_get_request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
4.2.13 rdma_get_request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.2.14 rdma_reject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.2.15 rdma_notify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.2.16 rdma_disconnect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.2.17 rdma_get_src_port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
4.2.18 rdma_get_dst_port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.2.19 rdma_get_local_addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
4.2.20 rdma_get_peer_addr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
4.2.21 rdma_get_devices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.2.22 rdma_free_devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
4.2.23 rdma_getaddrinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.2.24 rdma_freeaddrinfo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.2.25 rdma_create_qp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.2.26 rdma_destroy_qp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.2.27 rdma_join_multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.2.28 rdma_leave_multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.3 Event Handling Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.3.1 rdma_get_cm_event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.3.2 rdma_ack_cm_event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.3.3 rdma_event_str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Chapter 5 RDMA Verbs API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.1 Protection Domain Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.1.1 rdma_reg_msgs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.1.2 rdma_reg_read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.1.3 rdma_reg_write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
5.1.4 rdma_dereg_mr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.1.5 rdma_create_srq. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.1.6 rdma_destroy_srq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
5.2 Active Queue Pair Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
5.2.1 rdma_post_recvv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
5.2.2 rdma_post_sendv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.2.3 rdma_post_readv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5.2.4 rdma_post_writev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.2.5 rdma_post_recv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.2.6 rdma_post_send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.2.7 rdma_post_read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.2.8 rdma_post_write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5.2.9 rdma_post_ud_send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.2.10 rdma_get_send_comp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147