Lines Matching refs:id_priv

110 	struct cma_id_private *id_priv;  member
123 struct cma_id_private *id_priv; member
385 static int ucma_get_device(struct cma_id_private *id_priv, __be64 guid) in ucma_get_device() argument
410 id_priv->cma_dev = cma_dev; in ucma_get_device()
411 id_priv->id.verbs = cma_dev->verbs; in ucma_get_device()
412 id_priv->id.pd = cma_dev->pd; in ucma_get_device()
445 static void ucma_insert_id(struct cma_id_private *id_priv) in ucma_insert_id() argument
448 idm_set(&ucma_idm, id_priv->handle, id_priv); in ucma_insert_id()
452 static void ucma_remove_id(struct cma_id_private *id_priv) in ucma_remove_id() argument
454 if (id_priv->handle <= IDX_MAX_INDEX) in ucma_remove_id()
455 idm_clear(&ucma_idm, id_priv->handle); in ucma_remove_id()
463 static void ucma_free_id(struct cma_id_private *id_priv) in ucma_free_id() argument
465 ucma_remove_id(id_priv); in ucma_free_id()
466 if (id_priv->cma_dev) in ucma_free_id()
467 ucma_put_device(id_priv->cma_dev); in ucma_free_id()
468 pthread_cond_destroy(&id_priv->cond); in ucma_free_id()
469 pthread_mutex_destroy(&id_priv->mut); in ucma_free_id()
470 if (id_priv->id.route.path_rec) in ucma_free_id()
471 free(id_priv->id.route.path_rec); in ucma_free_id()
473 if (id_priv->sync) in ucma_free_id()
474 rdma_destroy_event_channel(id_priv->id.channel); in ucma_free_id()
475 if (id_priv->connect_len) in ucma_free_id()
476 free(id_priv->connect); in ucma_free_id()
477 free(id_priv); in ucma_free_id()
485 struct cma_id_private *id_priv; in ucma_alloc_id() local
487 id_priv = calloc(1, sizeof(*id_priv)); in ucma_alloc_id()
488 if (!id_priv) in ucma_alloc_id()
491 id_priv->id.context = context; in ucma_alloc_id()
492 id_priv->id.ps = ps; in ucma_alloc_id()
493 id_priv->id.qp_type = qp_type; in ucma_alloc_id()
494 id_priv->handle = 0xFFFFFFFF; in ucma_alloc_id()
497 id_priv->id.channel = rdma_create_event_channel(); in ucma_alloc_id()
498 if (!id_priv->id.channel) in ucma_alloc_id()
500 id_priv->sync = 1; in ucma_alloc_id()
502 id_priv->id.channel = channel; in ucma_alloc_id()
505 if (pthread_mutex_init(&id_priv->mut, NULL)) in ucma_alloc_id()
507 if (pthread_cond_init(&id_priv->cond, NULL)) in ucma_alloc_id()
510 return id_priv; in ucma_alloc_id()
512 err: ucma_free_id(id_priv); in ucma_alloc_id()
522 struct cma_id_private *id_priv; in rdma_create_id2() local
529 id_priv = ucma_alloc_id(channel, context, ps, qp_type); in rdma_create_id2()
530 if (!id_priv) in rdma_create_id2()
534 cmd.uid = (uintptr_t) id_priv; in rdma_create_id2()
538 ret = write(id_priv->id.channel->fd, &cmd, sizeof cmd); in rdma_create_id2()
544 id_priv->handle = resp.id; in rdma_create_id2()
545 ucma_insert_id(id_priv); in rdma_create_id2()
546 *id = &id_priv->id; in rdma_create_id2()
549 err: ucma_free_id(id_priv); in rdma_create_id2()
584 struct cma_id_private *id_priv; in rdma_destroy_id() local
587 id_priv = container_of(id, struct cma_id_private, id); in rdma_destroy_id()
588 ret = ucma_destroy_kern_id(id->channel->fd, id_priv->handle); in rdma_destroy_id()
592 if (id_priv->id.event) in rdma_destroy_id()
593 rdma_ack_cm_event(id_priv->id.event); in rdma_destroy_id()
595 pthread_mutex_lock(&id_priv->mut); in rdma_destroy_id()
596 while (id_priv->events_completed < ret) in rdma_destroy_id()
597 pthread_cond_wait(&id_priv->cond, &id_priv->mut); in rdma_destroy_id()
598 pthread_mutex_unlock(&id_priv->mut); in rdma_destroy_id()
600 ucma_free_id(id_priv); in rdma_destroy_id()
625 struct cma_id_private *id_priv; in ucma_query_addr() local
629 id_priv = container_of(id, struct cma_id_private, id); in ucma_query_addr()
630 cmd.id = id_priv->handle; in ucma_query_addr()
642 if (!id_priv->cma_dev && resp.node_guid) { in ucma_query_addr()
643 ret = ucma_get_device(id_priv, resp.node_guid); in ucma_query_addr()
657 struct cma_id_private *id_priv; in ucma_query_gid() local
662 id_priv = container_of(id, struct cma_id_private, id); in ucma_query_gid()
663 cmd.id = id_priv->handle; in ucma_query_gid()
717 struct cma_id_private *id_priv; in ucma_query_path() local
723 id_priv = container_of(id, struct cma_id_private, id); in ucma_query_path()
724 cmd.id = id_priv->handle; in ucma_query_path()
751 struct cma_id_private *id_priv; in ucma_query_route() local
755 id_priv = container_of(id, struct cma_id_private, id); in ucma_query_route()
756 cmd.id = id_priv->handle; in ucma_query_route()
786 if (!id_priv->cma_dev && resp.node_guid) { in ucma_query_route()
787 ret = ucma_get_device(id_priv, resp.node_guid); in ucma_query_route()
790 id_priv->id.port_num = resp.port_num; in ucma_query_route()
800 struct cma_id_private *id_priv; in rdma_bind_addr2() local
804 id_priv = container_of(id, struct cma_id_private, id); in rdma_bind_addr2()
805 cmd.id = id_priv->handle; in rdma_bind_addr2()
822 struct cma_id_private *id_priv; in rdma_bind_addr() local
833 id_priv = container_of(id, struct cma_id_private, id); in rdma_bind_addr()
834 cmd.id = id_priv->handle; in rdma_bind_addr()
846 struct cma_id_private *id_priv; in ucma_complete() local
849 id_priv = container_of(id, struct cma_id_private, id); in ucma_complete()
850 if (!id_priv->sync) in ucma_complete()
853 if (id_priv->id.event) { in ucma_complete()
854 rdma_ack_cm_event(id_priv->id.event); in ucma_complete()
855 id_priv->id.event = NULL; in ucma_complete()
858 ret = rdma_get_cm_event(id_priv->id.channel, &id_priv->id.event); in ucma_complete()
862 if (id_priv->id.event->status) { in ucma_complete()
863 if (id_priv->id.event->event == RDMA_CM_EVENT_REJECTED) in ucma_complete()
865 else if (id_priv->id.event->status < 0) in ucma_complete()
866 ret = ERR(-id_priv->id.event->status); in ucma_complete()
868 ret = ERR(-id_priv->id.event->status); in ucma_complete()
878 struct cma_id_private *id_priv; in rdma_resolve_addr2() local
882 id_priv = container_of(id, struct cma_id_private, id); in rdma_resolve_addr2()
883 cmd.id = id_priv->handle; in rdma_resolve_addr2()
902 struct cma_id_private *id_priv; in rdma_resolve_addr() local
918 id_priv = container_of(id, struct cma_id_private, id); in rdma_resolve_addr()
919 cmd.id = id_priv->handle; in rdma_resolve_addr()
963 struct cma_id_private *id_priv; in rdma_resolve_route() local
966 id_priv = container_of(id, struct cma_id_private, id); in rdma_resolve_route()
974 cmd.id = id_priv->handle; in rdma_resolve_route()
995 struct cma_id_private *id_priv; in rdma_init_qp_attr() local
999 id_priv = container_of(id, struct cma_id_private, id); in rdma_init_qp_attr()
1000 cmd.id = id_priv->handle; in rdma_init_qp_attr()
1016 struct cma_id_private *id_priv; in ucma_modify_qp_rtr() local
1043 id_priv = container_of(id, struct cma_id_private, id); in ucma_modify_qp_rtr()
1044 link_layer = id_priv->cma_dev->port[id->port_num - 1].link_layer; in ucma_modify_qp_rtr()
1107 static int ucma_init_conn_qp3(struct cma_id_private *id_priv, struct ibv_qp *qp) in ucma_init_conn_qp3() argument
1112 ret = ucma_find_pkey(id_priv->cma_dev, id_priv->id.port_num, in ucma_init_conn_qp3()
1113 id_priv->id.route.addr.addr.ibaddr.pkey, in ucma_init_conn_qp3()
1118 qp_attr.port_num = id_priv->id.port_num; in ucma_init_conn_qp3()
1127 static int ucma_init_conn_qp(struct cma_id_private *id_priv, struct ibv_qp *qp) in ucma_init_conn_qp() argument
1133 return ucma_init_conn_qp3(id_priv, qp); in ucma_init_conn_qp()
1136 ret = rdma_init_qp_attr(&id_priv->id, &qp_attr, &qp_attr_mask); in ucma_init_conn_qp()
1143 static int ucma_init_ud_qp3(struct cma_id_private *id_priv, struct ibv_qp *qp) in ucma_init_ud_qp3() argument
1148 ret = ucma_find_pkey(id_priv->cma_dev, id_priv->id.port_num, in ucma_init_ud_qp3()
1149 id_priv->id.route.addr.addr.ibaddr.pkey, in ucma_init_ud_qp3()
1154 qp_attr.port_num = id_priv->id.port_num; in ucma_init_ud_qp3()
1174 static int ucma_init_ud_qp(struct cma_id_private *id_priv, struct ibv_qp *qp) in ucma_init_ud_qp() argument
1180 return ucma_init_ud_qp3(id_priv, qp); in ucma_init_ud_qp()
1183 ret = rdma_init_qp_attr(&id_priv->id, &qp_attr, &qp_attr_mask); in ucma_init_ud_qp()
1258 struct cma_id_private *id_priv; in rdma_create_srq_ex() local
1262 id_priv = container_of(id, struct cma_id_private, id); in rdma_create_srq_ex()
1273 attr->xrcd = ucma_get_xrcd(id_priv->cma_dev); in rdma_create_srq_ex()
1330 struct cma_id_private *id_priv; in rdma_create_qp_ex() local
1337 id_priv = container_of(id, struct cma_id_private, id); in rdma_create_qp_ex()
1350 attr->xrcd = ucma_get_xrcd(id_priv->cma_dev); in rdma_create_qp_ex()
1375 ret = ucma_init_ud_qp(id_priv, qp); in rdma_create_qp_ex()
1377 ret = ucma_init_conn_qp(id_priv, qp); in rdma_create_qp_ex()
1412 static int ucma_valid_param(struct cma_id_private *id_priv, in ucma_valid_param() argument
1415 if (id_priv->id.ps != RDMA_PS_TCP) in ucma_valid_param()
1418 if (!id_priv->id.qp && !param) in ucma_valid_param()
1425 (param->responder_resources > id_priv->cma_dev->max_responder_resources)) in ucma_valid_param()
1429 (param->initiator_depth > id_priv->cma_dev->max_initiator_depth)) in ucma_valid_param()
1437 static void ucma_copy_conn_param_to_kern(struct cma_id_private *id_priv, in ucma_copy_conn_param_to_kern() argument
1444 dst->responder_resources = id_priv->responder_resources; in ucma_copy_conn_param_to_kern()
1445 dst->initiator_depth = id_priv->initiator_depth; in ucma_copy_conn_param_to_kern()
1448 if (id_priv->connect_len) { in ucma_copy_conn_param_to_kern()
1449 memcpy(dst->private_data, id_priv->connect, id_priv->connect_len); in ucma_copy_conn_param_to_kern()
1450 dst->private_data_len = id_priv->connect_len; in ucma_copy_conn_param_to_kern()
1472 struct cma_id_private *id_priv; in rdma_connect() local
1475 id_priv = container_of(id, struct cma_id_private, id); in rdma_connect()
1476 ret = ucma_valid_param(id_priv, conn_param); in rdma_connect()
1481 id_priv->initiator_depth = conn_param->initiator_depth; in rdma_connect()
1483 id_priv->initiator_depth = id_priv->cma_dev->max_initiator_depth; in rdma_connect()
1485 id_priv->responder_resources = conn_param->responder_resources; in rdma_connect()
1487 id_priv->responder_resources = id_priv->cma_dev->max_responder_resources; in rdma_connect()
1490 cmd.id = id_priv->handle; in rdma_connect()
1492 ucma_copy_conn_param_to_kern(id_priv, &cmd.conn_param, in rdma_connect()
1496 ucma_copy_conn_param_to_kern(id_priv, &cmd.conn_param, in rdma_connect()
1500 ucma_copy_conn_param_to_kern(id_priv, &cmd.conn_param, in rdma_connect()
1508 if (id_priv->connect_len) { in rdma_connect()
1509 free(id_priv->connect); in rdma_connect()
1510 id_priv->connect_len = 0; in rdma_connect()
1519 struct cma_id_private *id_priv; in rdma_listen() local
1523 id_priv = container_of(id, struct cma_id_private, id); in rdma_listen()
1524 cmd.id = id_priv->handle; in rdma_listen()
1539 struct cma_id_private *id_priv; in rdma_get_request() local
1543 id_priv = container_of(listen, struct cma_id_private, id); in rdma_get_request()
1544 if (!id_priv->sync) in rdma_get_request()
1566 if (id_priv->qp_init_attr) { in rdma_get_request()
1569 attr = *id_priv->qp_init_attr; in rdma_get_request()
1587 struct cma_id_private *id_priv; in rdma_accept() local
1590 id_priv = container_of(id, struct cma_id_private, id); in rdma_accept()
1591 ret = ucma_valid_param(id_priv, conn_param); in rdma_accept()
1596 id_priv->initiator_depth = min(id_priv->initiator_depth, in rdma_accept()
1597 id_priv->cma_dev->max_initiator_depth); in rdma_accept()
1599 id_priv->initiator_depth = conn_param->initiator_depth; in rdma_accept()
1602 id_priv->responder_resources = min(id_priv->responder_resources, in rdma_accept()
1603 id_priv->cma_dev->max_responder_resources); in rdma_accept()
1605 id_priv->responder_resources = conn_param->responder_resources; in rdma_accept()
1609 ret = ucma_modify_qp_rtr(id, id_priv->responder_resources); in rdma_accept()
1613 ret = ucma_modify_qp_rts(id, id_priv->initiator_depth); in rdma_accept()
1619 cmd.id = id_priv->handle; in rdma_accept()
1620 cmd.uid = (uintptr_t) id_priv; in rdma_accept()
1622 ucma_copy_conn_param_to_kern(id_priv, &cmd.conn_param, in rdma_accept()
1626 ucma_copy_conn_param_to_kern(id_priv, &cmd.conn_param, in rdma_accept()
1646 struct cma_id_private *id_priv; in rdma_reject() local
1651 id_priv = container_of(id, struct cma_id_private, id); in rdma_reject()
1652 cmd.id = id_priv->handle; in rdma_reject()
1668 struct cma_id_private *id_priv; in rdma_notify() local
1673 id_priv = container_of(id, struct cma_id_private, id); in rdma_notify()
1674 cmd.id = id_priv->handle; in rdma_notify()
1698 struct cma_id_private *id_priv; in rdma_disconnect() local
1706 id_priv = container_of(id, struct cma_id_private, id); in rdma_disconnect()
1707 cmd.id = id_priv->handle; in rdma_disconnect()
1720 struct cma_id_private *id_priv; in rdma_join_multicast2() local
1724 id_priv = container_of(id, struct cma_id_private, id); in rdma_join_multicast2()
1730 mc->id_priv = id_priv; in rdma_join_multicast2()
1737 pthread_mutex_lock(&id_priv->mut); in rdma_join_multicast2()
1738 mc->next = id_priv->mc_list; in rdma_join_multicast2()
1739 id_priv->mc_list = mc; in rdma_join_multicast2()
1740 pthread_mutex_unlock(&id_priv->mut); in rdma_join_multicast2()
1746 cmd.id = id_priv->handle; in rdma_join_multicast2()
1761 cmd.id = id_priv->handle; in rdma_join_multicast2()
1778 pthread_mutex_lock(&id_priv->mut); in rdma_join_multicast2()
1779 for (pos = &id_priv->mc_list; *pos != mc; pos = &(*pos)->next) in rdma_join_multicast2()
1782 pthread_mutex_unlock(&id_priv->mut); in rdma_join_multicast2()
1804 struct cma_id_private *id_priv; in rdma_leave_multicast() local
1812 id_priv = container_of(id, struct cma_id_private, id); in rdma_leave_multicast()
1813 pthread_mutex_lock(&id_priv->mut); in rdma_leave_multicast()
1814 for (pos = &id_priv->mc_list; *pos; pos = &(*pos)->next) in rdma_leave_multicast()
1821 pthread_mutex_unlock(&id_priv->mut); in rdma_leave_multicast()
1839 pthread_mutex_lock(&id_priv->mut); in rdma_leave_multicast()
1841 pthread_cond_wait(&mc->cond, &id_priv->mut); in rdma_leave_multicast()
1842 pthread_mutex_unlock(&id_priv->mut); in rdma_leave_multicast()
1850 static void ucma_complete_event(struct cma_id_private *id_priv) in ucma_complete_event() argument
1852 pthread_mutex_lock(&id_priv->mut); in ucma_complete_event()
1853 id_priv->events_completed++; in ucma_complete_event()
1854 pthread_cond_signal(&id_priv->cond); in ucma_complete_event()
1855 pthread_mutex_unlock(&id_priv->mut); in ucma_complete_event()
1860 pthread_mutex_lock(&mc->id_priv->mut); in ucma_complete_mc_event()
1863 mc->id_priv->events_completed++; in ucma_complete_mc_event()
1864 pthread_cond_signal(&mc->id_priv->cond); in ucma_complete_mc_event()
1865 pthread_mutex_unlock(&mc->id_priv->mut); in ucma_complete_mc_event()
1880 ucma_complete_event(evt->id_priv); in rdma_ack_cm_event()
1888 evt->event.status = ucma_query_addr(&evt->id_priv->id); in ucma_process_addr_resolved()
1890 evt->id_priv->id.verbs->device->transport_type == IBV_TRANSPORT_IB) in ucma_process_addr_resolved()
1891 evt->event.status = ucma_query_gid(&evt->id_priv->id); in ucma_process_addr_resolved()
1893 evt->event.status = ucma_query_route(&evt->id_priv->id); in ucma_process_addr_resolved()
1902 if (evt->id_priv->id.verbs->device->transport_type != IBV_TRANSPORT_IB) in ucma_process_route_resolved()
1906 evt->event.status = ucma_query_path(&evt->id_priv->id); in ucma_process_route_resolved()
1908 evt->event.status = ucma_query_route(&evt->id_priv->id); in ucma_process_route_resolved()
1939 struct cma_id_private *id_priv; in ucma_process_conn_req() local
1942 id_priv = ucma_alloc_id(evt->id_priv->id.channel, in ucma_process_conn_req()
1943 evt->id_priv->id.context, evt->id_priv->id.ps, in ucma_process_conn_req()
1944 evt->id_priv->id.qp_type); in ucma_process_conn_req()
1945 if (!id_priv) { in ucma_process_conn_req()
1946 ucma_destroy_kern_id(evt->id_priv->id.channel->fd, handle); in ucma_process_conn_req()
1951 evt->event.listen_id = &evt->id_priv->id; in ucma_process_conn_req()
1952 evt->event.id = &id_priv->id; in ucma_process_conn_req()
1953 id_priv->handle = handle; in ucma_process_conn_req()
1954 ucma_insert_id(id_priv); in ucma_process_conn_req()
1955 id_priv->initiator_depth = evt->event.param.conn.initiator_depth; in ucma_process_conn_req()
1956 id_priv->responder_resources = evt->event.param.conn.responder_resources; in ucma_process_conn_req()
1958 if (evt->id_priv->sync) { in ucma_process_conn_req()
1959 ret = rdma_migrate_id(&id_priv->id, NULL); in ucma_process_conn_req()
1964 ret = ucma_query_req_info(&id_priv->id); in ucma_process_conn_req()
1971 rdma_destroy_id(&id_priv->id); in ucma_process_conn_req()
1973 ucma_complete_event(evt->id_priv); in ucma_process_conn_req()
1977 static int ucma_process_conn_resp(struct cma_id_private *id_priv) in ucma_process_conn_resp() argument
1982 ret = ucma_modify_qp_rtr(&id_priv->id, RDMA_MAX_RESP_RES); in ucma_process_conn_resp()
1986 ret = ucma_modify_qp_rts(&id_priv->id, RDMA_MAX_INIT_DEPTH); in ucma_process_conn_resp()
1991 cmd.id = id_priv->handle; in ucma_process_conn_resp()
1993 ret = write(id_priv->id.channel->fd, &cmd, sizeof cmd); in ucma_process_conn_resp()
2001 ucma_modify_qp_err(&id_priv->id); in ucma_process_conn_resp()
2010 if (!evt->id_priv->id.qp) in ucma_process_join()
2013 return rdma_seterrno(ibv_attach_mcast(evt->id_priv->id.qp, in ucma_process_join()
2095 evt->id_priv = (void *) (uintptr_t) resp.uid; in rdma_get_cm_event()
2097 evt->id_priv = ucma_lookup_id(resp.id); in rdma_get_cm_event()
2098 if (!evt->id_priv) { in rdma_get_cm_event()
2104 ucma_complete_event(evt->id_priv); in rdma_get_cm_event()
2108 evt->event.id = &evt->id_priv->id; in rdma_get_cm_event()
2119 evt->id_priv = (void *) (uintptr_t) resp.uid; in rdma_get_cm_event()
2120 if (ucma_is_ud_qp(evt->id_priv->id.qp_type)) in rdma_get_cm_event()
2131 evt->event.status = ucma_process_conn_resp(evt->id_priv); in rdma_get_cm_event()
2136 evt->id_priv->connect_error = 1; in rdma_get_cm_event()
2140 if (ucma_is_ud_qp(evt->id_priv->id.qp_type)) { in rdma_get_cm_event()
2148 if (evt->id_priv->connect_error) { in rdma_get_cm_event()
2149 ucma_complete_event(evt->id_priv); in rdma_get_cm_event()
2156 if (evt->id_priv->connect_error) { in rdma_get_cm_event()
2157 ucma_complete_event(evt->id_priv); in rdma_get_cm_event()
2164 evt->id_priv = evt->mc->id_priv; in rdma_get_cm_event()
2165 evt->event.id = &evt->id_priv->id; in rdma_get_cm_event()
2174 evt->id_priv = evt->mc->id_priv; in rdma_get_cm_event()
2175 evt->event.id = &evt->id_priv->id; in rdma_get_cm_event()
2179 evt->id_priv = (void *) (uintptr_t) resp.uid; in rdma_get_cm_event()
2180 evt->event.id = &evt->id_priv->id; in rdma_get_cm_event()
2182 if (ucma_is_ud_qp(evt->id_priv->id.qp_type)) in rdma_get_cm_event()
2237 struct cma_id_private *id_priv; in rdma_set_option() local
2241 id_priv = container_of(id, struct cma_id_private, id); in rdma_set_option()
2242 cmd.id = id_priv->handle; in rdma_set_option()
2259 struct cma_id_private *id_priv; in rdma_migrate_id() local
2262 id_priv = container_of(id, struct cma_id_private, id); in rdma_migrate_id()
2263 if (id_priv->sync && !channel) in rdma_migrate_id()
2273 cmd.id = id_priv->handle; in rdma_migrate_id()
2285 if (id_priv->sync) { in rdma_migrate_id()
2300 pthread_mutex_lock(&id_priv->mut); in rdma_migrate_id()
2301 id_priv->sync = sync; in rdma_migrate_id()
2303 while (id_priv->events_completed < resp.events_reported) in rdma_migrate_id()
2304 pthread_cond_wait(&id_priv->cond, &id_priv->mut); in rdma_migrate_id()
2305 pthread_mutex_unlock(&id_priv->mut); in rdma_migrate_id()
2313 struct cma_id_private *id_priv; in ucma_passive_ep() local
2323 id_priv = container_of(id, struct cma_id_private, id); in ucma_passive_ep()
2328 id_priv->qp_init_attr = malloc(sizeof(*qp_init_attr)); in ucma_passive_ep()
2329 if (!id_priv->qp_init_attr) in ucma_passive_ep()
2332 *id_priv->qp_init_attr = *qp_init_attr; in ucma_passive_ep()
2333 id_priv->qp_init_attr->qp_type = res->ai_qp_type; in ucma_passive_ep()
2343 struct cma_id_private *id_priv; in rdma_create_ep() local
2384 id_priv = container_of(cm_id, struct cma_id_private, id); in rdma_create_ep()
2385 id_priv->connect = malloc(res->ai_connect_len); in rdma_create_ep()
2386 if (!id_priv->connect) { in rdma_create_ep()
2390 memcpy(id_priv->connect, res->ai_connect, res->ai_connect_len); in rdma_create_ep()
2391 id_priv->connect_len = res->ai_connect_len; in rdma_create_ep()
2405 struct cma_id_private *id_priv; in rdma_destroy_ep() local
2413 id_priv = container_of(id, struct cma_id_private, id); in rdma_destroy_ep()
2414 if (id_priv->qp_init_attr) in rdma_destroy_ep()
2415 free(id_priv->qp_init_attr); in rdma_destroy_ep()
2422 struct cma_id_private *id_priv; in ucma_max_qpsize() local
2425 id_priv = container_of(id, struct cma_id_private, id); in ucma_max_qpsize()
2426 if (id && id_priv->cma_dev) { in ucma_max_qpsize()
2427 max_size = id_priv->cma_dev->max_qpsize; in ucma_max_qpsize()