Lines Matching refs:cmd

296 	struct rdma_ucm_get_event cmd;  in ucma_get_event()  local
303 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_get_event()
334 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_get_event()
350 static int ucma_get_qp_type(struct rdma_ucm_create_id *cmd, enum ib_qp_type *qp_type) in ucma_get_qp_type() argument
352 switch (cmd->ps) { in ucma_get_qp_type()
361 *qp_type = cmd->qp_type; in ucma_get_qp_type()
371 struct rdma_ucm_create_id cmd; in ucma_create_id() local
380 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_create_id()
383 ret = ucma_get_qp_type(&cmd, &qp_type); in ucma_create_id()
393 ctx->uid = cmd.uid; in ucma_create_id()
394 ctx->cm_id = rdma_create_id(ucma_event_handler, ctx, cmd.ps, qp_type); in ucma_create_id()
401 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_create_id()
484 struct rdma_ucm_destroy_id cmd; in ucma_destroy_id() local
492 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_destroy_id()
496 ctx = _ucma_find_context(cmd.id, file); in ucma_destroy_id()
508 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_destroy_id()
518 struct rdma_ucm_bind_ip cmd; in ucma_bind_ip() local
522 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_bind_ip()
525 ctx = ucma_get_ctx(file, cmd.id); in ucma_bind_ip()
529 ret = rdma_bind_addr(ctx->cm_id, (struct sockaddr *) &cmd.addr); in ucma_bind_ip()
537 struct rdma_ucm_bind cmd; in ucma_bind() local
542 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_bind()
545 addr = (struct sockaddr *) &cmd.addr; in ucma_bind()
546 if (cmd.reserved || !cmd.addr_size || (cmd.addr_size != rdma_addr_size(addr))) in ucma_bind()
549 ctx = ucma_get_ctx(file, cmd.id); in ucma_bind()
562 struct rdma_ucm_resolve_ip cmd; in ucma_resolve_ip() local
566 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_resolve_ip()
569 ctx = ucma_get_ctx(file, cmd.id); in ucma_resolve_ip()
573 ret = rdma_resolve_addr(ctx->cm_id, (struct sockaddr *) &cmd.src_addr, in ucma_resolve_ip()
574 (struct sockaddr *) &cmd.dst_addr, in ucma_resolve_ip()
575 cmd.timeout_ms); in ucma_resolve_ip()
584 struct rdma_ucm_resolve_addr cmd; in ucma_resolve_addr() local
589 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_resolve_addr()
592 src = (struct sockaddr *) &cmd.src_addr; in ucma_resolve_addr()
593 dst = (struct sockaddr *) &cmd.dst_addr; in ucma_resolve_addr()
594 if (cmd.reserved || (cmd.src_size && (cmd.src_size != rdma_addr_size(src))) || in ucma_resolve_addr()
595 !cmd.dst_size || (cmd.dst_size != rdma_addr_size(dst))) in ucma_resolve_addr()
598 ctx = ucma_get_ctx(file, cmd.id); in ucma_resolve_addr()
602 ret = rdma_resolve_addr(ctx->cm_id, src, dst, cmd.timeout_ms); in ucma_resolve_addr()
611 struct rdma_ucm_resolve_route cmd; in ucma_resolve_route() local
615 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_resolve_route()
618 ctx = ucma_get_ctx(file, cmd.id); in ucma_resolve_route()
622 ret = rdma_resolve_route(ctx->cm_id, cmd.timeout_ms); in ucma_resolve_route()
695 struct rdma_ucm_query cmd; in ucma_query_route() local
704 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_query_route()
707 ctx = ucma_get_ctx(file, cmd.id); in ucma_query_route()
747 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_query_route()
877 struct rdma_ucm_query cmd; in ucma_query() local
882 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_query()
885 response = (void __user *)(unsigned long) cmd.response; in ucma_query()
886 ctx = ucma_get_ctx(file, cmd.id); in ucma_query()
890 switch (cmd.option) { in ucma_query()
928 struct rdma_ucm_connect cmd; in ucma_connect() local
933 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_connect()
936 if (!cmd.conn_param.valid) in ucma_connect()
939 ctx = ucma_get_ctx(file, cmd.id); in ucma_connect()
943 ucma_copy_conn_param(ctx->cm_id, &conn_param, &cmd.conn_param); in ucma_connect()
952 struct rdma_ucm_listen cmd; in ucma_listen() local
956 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_listen()
959 ctx = ucma_get_ctx(file, cmd.id); in ucma_listen()
963 ctx->backlog = cmd.backlog > 0 && cmd.backlog < max_backlog ? in ucma_listen()
964 cmd.backlog : max_backlog; in ucma_listen()
973 struct rdma_ucm_accept cmd; in ucma_accept() local
978 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_accept()
981 ctx = ucma_get_ctx(file, cmd.id); in ucma_accept()
985 if (cmd.conn_param.valid) { in ucma_accept()
986 ucma_copy_conn_param(ctx->cm_id, &conn_param, &cmd.conn_param); in ucma_accept()
990 ctx->uid = cmd.uid; in ucma_accept()
1002 struct rdma_ucm_reject cmd; in ucma_reject() local
1006 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_reject()
1009 ctx = ucma_get_ctx(file, cmd.id); in ucma_reject()
1013 ret = rdma_reject(ctx->cm_id, cmd.private_data, cmd.private_data_len); in ucma_reject()
1021 struct rdma_ucm_disconnect cmd; in ucma_disconnect() local
1025 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_disconnect()
1028 ctx = ucma_get_ctx(file, cmd.id); in ucma_disconnect()
1041 struct rdma_ucm_init_qp_attr cmd; in ucma_init_qp_attr() local
1050 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_init_qp_attr()
1053 ctx = ucma_get_ctx(file, cmd.id); in ucma_init_qp_attr()
1059 qp_attr.qp_state = cmd.qp_state; in ucma_init_qp_attr()
1065 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_init_qp_attr()
1178 struct rdma_ucm_set_option cmd; in ucma_set_option() local
1183 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_set_option()
1186 ctx = ucma_get_ctx(file, cmd.id); in ucma_set_option()
1190 optval = memdup_user((void __user *) (unsigned long) cmd.optval, in ucma_set_option()
1191 cmd.optlen); in ucma_set_option()
1197 ret = ucma_set_option_level(ctx, cmd.level, cmd.optname, optval, in ucma_set_option()
1198 cmd.optlen); in ucma_set_option()
1209 struct rdma_ucm_notify cmd; in ucma_notify() local
1213 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_notify()
1216 ctx = ucma_get_ctx(file, cmd.id); in ucma_notify()
1220 ret = rdma_notify(ctx->cm_id, (enum ib_event_type) cmd.event); in ucma_notify()
1226 struct rdma_ucm_join_mcast *cmd, int out_len) in ucma_process_join() argument
1237 addr = (struct sockaddr *) &cmd->addr; in ucma_process_join()
1238 if (cmd->reserved || !cmd->addr_size || (cmd->addr_size != rdma_addr_size(addr))) in ucma_process_join()
1241 ctx = ucma_get_ctx(file, cmd->id); in ucma_process_join()
1252 mc->uid = cmd->uid; in ucma_process_join()
1253 memcpy(&mc->addr, addr, cmd->addr_size); in ucma_process_join()
1259 if (copy_to_user((void __user *)(unsigned long) cmd->response, in ucma_process_join()
1288 struct rdma_ucm_join_ip_mcast cmd; in ucma_join_ip_multicast() local
1291 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_join_ip_multicast()
1294 join_cmd.response = cmd.response; in ucma_join_ip_multicast()
1295 join_cmd.uid = cmd.uid; in ucma_join_ip_multicast()
1296 join_cmd.id = cmd.id; in ucma_join_ip_multicast()
1297 join_cmd.addr_size = rdma_addr_size((struct sockaddr *) &cmd.addr); in ucma_join_ip_multicast()
1299 memcpy(&join_cmd.addr, &cmd.addr, join_cmd.addr_size); in ucma_join_ip_multicast()
1308 struct rdma_ucm_join_mcast cmd; in ucma_join_multicast() local
1310 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_join_multicast()
1313 return ucma_process_join(file, &cmd, out_len); in ucma_join_multicast()
1320 struct rdma_ucm_destroy_id cmd; in ucma_leave_multicast() local
1328 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_leave_multicast()
1332 mc = idr_find(&multicast_idr, cmd.id); in ucma_leave_multicast()
1358 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_leave_multicast()
1401 struct rdma_ucm_migrate_id cmd; in ucma_migrate_id() local
1408 if (copy_from_user(&cmd, inbuf, sizeof(cmd))) in ucma_migrate_id()
1412 f = fdget(cmd.fd); in ucma_migrate_id()
1417 ctx = ucma_get_ctx(f.file->private_data, cmd.id); in ucma_migrate_id()
1445 if (copy_to_user((void __user *)(unsigned long)cmd.response, in ucma_migrate_id()
1499 if (hdr.cmd >= ARRAY_SIZE(ucma_cmd_table)) in ucma_write()
1505 if (!ucma_cmd_table[hdr.cmd]) in ucma_write()
1508 ret = ucma_cmd_table[hdr.cmd](file, buf + sizeof(hdr), hdr.in, hdr.out); in ucma_write()