Lines Matching defs:cm_id
40 /* Global IPv4 and IPv6 RDS RDMA listener cm_id */
49 static int rds_rdma_cm_event_handler_cmn(struct rdma_cm_id *cm_id,
54 struct rds_connection *conn = cm_id->context;
60 rdsdebug("conn %p id %p handling event %u (%s)\n", conn, cm_id,
63 if (cm_id->device->node_type == RDMA_NODE_IB_CA)
72 * right away. We return 0 so cm_id doesn't get
85 ret = trans->cm_handle_connect(cm_id, event, isv6);
90 rdma_set_service_type(cm_id, conn->c_tos);
92 ret = rdma_resolve_route(cm_id,
99 * cm_id is valid before proceeding
105 if (ibic && ibic->i_cm_id == cm_id) {
106 cm_id->route.path_rec[0].sl =
108 ret = trans->cm_initiate_connect(cm_id, isv6);
123 err = (int *)rdma_consumer_reject_data(cm_id, event, &len);
136 rdma_reject_msg(cm_id, event->status));
176 rdsdebug("id %p event %u (%s) handling ret %d\n", cm_id, event->event,
182 int rds_rdma_cm_event_handler(struct rdma_cm_id *cm_id,
185 return rds_rdma_cm_event_handler_cmn(cm_id, event, false);
189 int rds6_rdma_cm_event_handler(struct rdma_cm_id *cm_id,
192 return rds_rdma_cm_event_handler_cmn(cm_id, event, true);
200 struct rdma_cm_id *cm_id;
203 cm_id = rdma_create_id(&init_net, handler, NULL,
205 if (IS_ERR(cm_id)) {
206 ret = PTR_ERR(cm_id);
213 * XXX I bet this binds the cm_id to a device. If we want to support
216 ret = rdma_bind_addr(cm_id, sa);
223 ret = rdma_listen(cm_id, 128);
230 rdsdebug("cm %p listening on port %u\n", cm_id, RDS_PORT);
232 *ret_cm_id = cm_id;
233 cm_id = NULL;
235 if (cm_id)
236 rdma_destroy_id(cm_id);