Lines Matching refs:resp
109 struct rdma_ucm_event_resp resp; member
235 uevent->resp.uid = uevent->mc->uid; in ucma_set_event_context()
236 uevent->resp.id = uevent->mc->id; in ucma_set_event_context()
239 uevent->resp.uid = ctx->uid; in ucma_set_event_context()
240 uevent->resp.id = ctx->id; in ucma_set_event_context()
259 uevent->resp.event = event->event; in ucma_event_handler()
260 uevent->resp.status = event->status; in ucma_event_handler()
262 ucma_copy_ud_event(&uevent->resp.param.ud, &event->param.ud); in ucma_event_handler()
264 ucma_copy_conn_event(&uevent->resp.param.conn, in ucma_event_handler()
300 if (out_len < sizeof uevent->resp) in ucma_get_event()
322 if (uevent->resp.event == RDMA_CM_EVENT_CONNECT_REQUEST) { in ucma_get_event()
331 uevent->resp.id = ctx->id; in ucma_get_event()
335 &uevent->resp, sizeof uevent->resp)) { in ucma_get_event()
372 struct rdma_ucm_create_id_resp resp; in ucma_create_id() local
377 if (out_len < sizeof(resp)) in ucma_create_id()
400 resp.id = ctx->id; in ucma_create_id()
402 &resp, sizeof(resp))) { in ucma_create_id()
471 if (uevent->resp.event == RDMA_CM_EVENT_CONNECT_REQUEST) in ucma_free_ctx()
485 struct rdma_ucm_destroy_id_resp resp; in ucma_destroy_id() local
489 if (out_len < sizeof(resp)) in ucma_destroy_id()
506 resp.events_reported = ucma_free_ctx(ctx); in ucma_destroy_id()
509 &resp, sizeof(resp))) in ucma_destroy_id()
627 static void ucma_copy_ib_route(struct rdma_ucm_query_route_resp *resp, in ucma_copy_ib_route() argument
632 resp->num_paths = route->num_paths; in ucma_copy_ib_route()
637 (union ib_gid *) &resp->ib_route[0].dgid); in ucma_copy_ib_route()
639 (union ib_gid *) &resp->ib_route[0].sgid); in ucma_copy_ib_route()
640 resp->ib_route[0].pkey = cpu_to_be16(ib_addr_get_pkey(dev_addr)); in ucma_copy_ib_route()
643 ib_copy_path_rec_to_user(&resp->ib_route[1], in ucma_copy_ib_route()
647 ib_copy_path_rec_to_user(&resp->ib_route[0], in ucma_copy_ib_route()
655 static void ucma_copy_iboe_route(struct rdma_ucm_query_route_resp *resp, in ucma_copy_iboe_route() argument
659 resp->num_paths = route->num_paths; in ucma_copy_iboe_route()
663 (union ib_gid *)&resp->ib_route[0].dgid); in ucma_copy_iboe_route()
665 (union ib_gid *)&resp->ib_route[0].sgid); in ucma_copy_iboe_route()
666 resp->ib_route[0].pkey = cpu_to_be16(0xffff); in ucma_copy_iboe_route()
669 ib_copy_path_rec_to_user(&resp->ib_route[1], in ucma_copy_iboe_route()
673 ib_copy_path_rec_to_user(&resp->ib_route[0], in ucma_copy_iboe_route()
681 static void ucma_copy_iw_route(struct rdma_ucm_query_route_resp *resp, in ucma_copy_iw_route() argument
687 rdma_addr_get_dgid(dev_addr, (union ib_gid *) &resp->ib_route[0].dgid); in ucma_copy_iw_route()
688 rdma_addr_get_sgid(dev_addr, (union ib_gid *) &resp->ib_route[0].sgid); in ucma_copy_iw_route()
696 struct rdma_ucm_query_route_resp resp; in ucma_query_route() local
701 if (out_len < sizeof(resp)) in ucma_query_route()
711 memset(&resp, 0, sizeof resp); in ucma_query_route()
713 memcpy(&resp.src_addr, addr, addr->sa_family == AF_INET ? in ucma_query_route()
717 memcpy(&resp.dst_addr, addr, addr->sa_family == AF_INET ? in ucma_query_route()
723 resp.node_guid = (__force __u64) ctx->cm_id->device->node_guid; in ucma_query_route()
724 resp.port_num = ctx->cm_id->port_num; in ucma_query_route()
730 ucma_copy_ib_route(&resp, &ctx->cm_id->route); in ucma_query_route()
733 ucma_copy_iboe_route(&resp, &ctx->cm_id->route); in ucma_query_route()
740 ucma_copy_iw_route(&resp, &ctx->cm_id->route); in ucma_query_route()
748 &resp, sizeof(resp))) in ucma_query_route()
756 struct rdma_ucm_query_addr_resp *resp) in ucma_query_device_addr() argument
761 resp->node_guid = (__force __u64) cm_id->device->node_guid; in ucma_query_device_addr()
762 resp->port_num = cm_id->port_num; in ucma_query_device_addr()
763 resp->pkey = (__force __u16) cpu_to_be16( in ucma_query_device_addr()
770 struct rdma_ucm_query_addr_resp resp; in ucma_query_addr() local
774 if (out_len < sizeof(resp)) in ucma_query_addr()
777 memset(&resp, 0, sizeof resp); in ucma_query_addr()
780 resp.src_size = rdma_addr_size(addr); in ucma_query_addr()
781 memcpy(&resp.src_addr, addr, resp.src_size); in ucma_query_addr()
784 resp.dst_size = rdma_addr_size(addr); in ucma_query_addr()
785 memcpy(&resp.dst_addr, addr, resp.dst_size); in ucma_query_addr()
787 ucma_query_device_addr(ctx->cm_id, &resp); in ucma_query_addr()
789 if (copy_to_user(response, &resp, sizeof(resp))) in ucma_query_addr()
798 struct rdma_ucm_query_path_resp *resp; in ucma_query_path() local
801 if (out_len < sizeof(*resp)) in ucma_query_path()
804 resp = kzalloc(out_len, GFP_KERNEL); in ucma_query_path()
805 if (!resp) in ucma_query_path()
808 resp->num_paths = ctx->cm_id->route.num_paths; in ucma_query_path()
809 for (i = 0, out_len -= sizeof(*resp); in ucma_query_path()
810 i < resp->num_paths && out_len > sizeof(struct ib_path_rec_data); in ucma_query_path()
813 resp->path_data[i].flags = IB_PATH_GMP | IB_PATH_PRIMARY | in ucma_query_path()
816 &resp->path_data[i].path_rec); in ucma_query_path()
819 if (copy_to_user(response, resp, in ucma_query_path()
820 sizeof(*resp) + (i * sizeof(struct ib_path_rec_data)))) in ucma_query_path()
823 kfree(resp); in ucma_query_path()
830 struct rdma_ucm_query_addr_resp resp; in ucma_query_gid() local
834 if (out_len < sizeof(resp)) in ucma_query_gid()
837 memset(&resp, 0, sizeof resp); in ucma_query_gid()
839 ucma_query_device_addr(ctx->cm_id, &resp); in ucma_query_gid()
841 addr = (struct sockaddr_ib *) &resp.src_addr; in ucma_query_gid()
842 resp.src_size = sizeof(*addr); in ucma_query_gid()
844 memcpy(addr, &ctx->cm_id->route.addr.src_addr, resp.src_size); in ucma_query_gid()
847 addr->sib_pkey = (__force __be16) resp.pkey; in ucma_query_gid()
854 addr = (struct sockaddr_ib *) &resp.dst_addr; in ucma_query_gid()
855 resp.dst_size = sizeof(*addr); in ucma_query_gid()
857 memcpy(addr, &ctx->cm_id->route.addr.dst_addr, resp.dst_size); in ucma_query_gid()
860 addr->sib_pkey = (__force __be16) resp.pkey; in ucma_query_gid()
867 if (copy_to_user(response, &resp, sizeof(resp))) in ucma_query_gid()
1042 struct ib_uverbs_qp_attr resp; in ucma_init_qp_attr() local
1047 if (out_len < sizeof(resp)) in ucma_init_qp_attr()
1057 resp.qp_attr_mask = 0; in ucma_init_qp_attr()
1060 ret = rdma_init_qp_attr(ctx->cm_id, &qp_attr, &resp.qp_attr_mask); in ucma_init_qp_attr()
1064 ib_copy_qp_attr_to_user(&resp, &qp_attr); in ucma_init_qp_attr()
1066 &resp, sizeof(resp))) in ucma_init_qp_attr()
1228 struct rdma_ucm_create_id_resp resp; in ucma_process_join() local
1234 if (out_len < sizeof(resp)) in ucma_process_join()
1258 resp.id = mc->id; in ucma_process_join()
1260 &resp, sizeof(resp))) { in ucma_process_join()
1321 struct rdma_ucm_destroy_id_resp resp; in ucma_leave_multicast() local
1325 if (out_len < sizeof(resp)) in ucma_leave_multicast()
1355 resp.events_reported = mc->events_reported; in ucma_leave_multicast()
1359 &resp, sizeof(resp))) in ucma_leave_multicast()
1402 struct rdma_ucm_migrate_resp resp; in ucma_migrate_id() local
1425 resp.events_reported = ctx->events_reported; in ucma_migrate_id()
1439 resp.events_reported = ctx->events_reported; in ucma_migrate_id()
1446 &resp, sizeof(resp))) in ucma_migrate_id()