Lines Matching refs:cm_id
138 } cm_id; member
740 if (!id_priv->cm_id.ib || (id_priv->id.qp_type == IB_QPT_UD)) in rdma_init_qp_attr()
743 ret = ib_cm_init_qp_attr(id_priv->cm_id.ib, qp_attr, in rdma_init_qp_attr()
750 if (!id_priv->cm_id.iw) { in rdma_init_qp_attr()
754 ret = iw_cm_init_qp_attr(id_priv->cm_id.iw, qp_attr, in rdma_init_qp_attr()
1059 if (id_priv->cm_id.ib) in rdma_destroy_id()
1060 ib_destroy_cm_id(id_priv->cm_id.ib); in rdma_destroy_id()
1063 if (id_priv->cm_id.iw) in rdma_destroy_id()
1064 iw_destroy_cm_id(id_priv->cm_id.iw); in rdma_destroy_id()
1097 ret = ib_send_cm_rtu(id_priv->cm_id.ib, NULL, 0); in cma_rep_recv()
1104 ib_send_cm_rej(id_priv->cm_id.ib, IB_CM_REJ_CONSUMER_DEFINED, in cma_rep_recv()
1123 static int cma_ib_handler(struct ib_cm_id *cm_id, struct ib_cm_event *ib_event) in cma_ib_handler() argument
1125 struct rdma_id_private *id_priv = cm_id->context; in cma_ib_handler()
1188 id_priv->cm_id.ib = NULL; in cma_ib_handler()
1299 static int cma_req_handler(struct ib_cm_id *cm_id, struct ib_cm_event *ib_event) in cma_req_handler() argument
1305 listen_id = cm_id->context; in cma_req_handler()
1335 conn_id->cm_id.ib = cm_id; in cma_req_handler()
1336 cm_id->context = conn_id; in cma_req_handler()
1337 cm_id->cm_handler = cma_ib_handler; in cma_req_handler()
1354 ib_send_cm_mra(cm_id, CMA_CM_MRA_SETTING, NULL, 0); in cma_req_handler()
1364 conn_id->cm_id.ib = NULL; in cma_req_handler()
1474 id_priv->cm_id.iw = NULL; in cma_iw_handler()
1485 static int iw_conn_req_handler(struct iw_cm_id *cm_id, in iw_conn_req_handler() argument
1496 listen_id = cm_id->context; in iw_conn_req_handler()
1526 conn_id->cm_id.iw = cm_id; in iw_conn_req_handler()
1527 cm_id->context = conn_id; in iw_conn_req_handler()
1528 cm_id->cm_handler = cma_iw_handler; in iw_conn_req_handler()
1555 conn_id->cm_id.iw = NULL; in iw_conn_req_handler()
1583 id_priv->cm_id.ib = id; in cma_ib_listen()
1588 ret = ib_cm_listen(id_priv->cm_id.ib, svc_id, 0, NULL); in cma_ib_listen()
1591 ret = ib_cm_listen(id_priv->cm_id.ib, svc_id, 0, &compare_data); in cma_ib_listen()
1595 ib_destroy_cm_id(id_priv->cm_id.ib); in cma_ib_listen()
1596 id_priv->cm_id.ib = NULL; in cma_ib_listen()
1613 id_priv->cm_id.iw = id; in cma_iw_listen()
1615 memcpy(&id_priv->cm_id.iw->local_addr, cma_src_addr(id_priv), in cma_iw_listen()
1618 ret = iw_cm_listen(id_priv->cm_id.iw, backlog); in cma_iw_listen()
1621 iw_destroy_cm_id(id_priv->cm_id.iw); in cma_iw_listen()
1622 id_priv->cm_id.iw = NULL; in cma_iw_listen()
2663 static int cma_sidr_rep_handler(struct ib_cm_id *cm_id, in cma_sidr_rep_handler() argument
2666 struct rdma_id_private *id_priv = cm_id->context; in cma_sidr_rep_handler()
2711 id_priv->cm_id.ib = NULL; in cma_sidr_rep_handler()
2761 id_priv->cm_id.ib = id; in cma_resolve_ib_udp()
2768 ret = ib_send_cm_sidr_req(id_priv->cm_id.ib, &req); in cma_resolve_ib_udp()
2770 ib_destroy_cm_id(id_priv->cm_id.ib); in cma_resolve_ib_udp()
2771 id_priv->cm_id.ib = NULL; in cma_resolve_ib_udp()
2810 id_priv->cm_id.ib = id; in cma_connect_ib()
2838 ret = ib_send_cm_req(id_priv->cm_id.ib, &req); in cma_connect_ib()
2842 id_priv->cm_id.ib = NULL; in cma_connect_ib()
2852 struct iw_cm_id *cm_id; in cma_connect_iw() local
2856 cm_id = iw_create_cm_id(id_priv->id.device, cma_iw_handler, id_priv); in cma_connect_iw()
2857 if (IS_ERR(cm_id)) in cma_connect_iw()
2858 return PTR_ERR(cm_id); in cma_connect_iw()
2860 id_priv->cm_id.iw = cm_id; in cma_connect_iw()
2862 memcpy(&cm_id->local_addr, cma_src_addr(id_priv), in cma_connect_iw()
2864 memcpy(&cm_id->remote_addr, cma_dst_addr(id_priv), in cma_connect_iw()
2881 ret = iw_cm_connect(cm_id, &iw_param); in cma_connect_iw()
2884 iw_destroy_cm_id(cm_id); in cma_connect_iw()
2885 id_priv->cm_id.iw = NULL; in cma_connect_iw()
2954 ret = ib_send_cm_rep(id_priv->cm_id.ib, &rep); in cma_accept_ib()
2978 return iw_cm_accept(id_priv->cm_id.iw, &iw_param); in cma_accept_iw()
3000 return ib_send_cm_sidr_rep(id_priv->cm_id.ib, &rep); in cma_send_sidr_rep()
3063 if (!id_priv->cm_id.ib) in rdma_notify()
3068 ret = ib_cm_notify(id_priv->cm_id.ib, event); in rdma_notify()
3085 if (!id_priv->cm_id.ib) in rdma_reject()
3094 ret = ib_send_cm_rej(id_priv->cm_id.ib, in rdma_reject()
3099 ret = iw_cm_reject(id_priv->cm_id.iw, in rdma_reject()
3116 if (!id_priv->cm_id.ib) in rdma_disconnect()
3125 if (ib_send_cm_dreq(id_priv->cm_id.ib, NULL, 0)) in rdma_disconnect()
3126 ib_send_cm_drep(id_priv->cm_id.ib, NULL, 0); in rdma_disconnect()
3129 ret = iw_cm_disconnect(id_priv->cm_id.iw, 0); in rdma_disconnect()