Lines Matching +full:venus +full:- +full:protocol

93    bool venus;  member
105 .socket = -1,
175 {"no-fork", no_argument, NULL, OPT_NO_FORK}, in vtest_server_parse_args()
176 {"no-loop-or-fork", no_argument, NULL, OPT_NO_LOOP_OR_FORK}, in vtest_server_parse_args()
177 {"multi-clients", no_argument, NULL, OPT_MULTI_CLIENTS}, in vtest_server_parse_args()
178 {"use-glx", no_argument, NULL, OPT_USE_GLX}, in vtest_server_parse_args()
179 {"use-egl-surfaceless", no_argument, NULL, OPT_USE_EGL_SURFACELESS}, in vtest_server_parse_args()
180 {"use-gles", no_argument, NULL, OPT_USE_GLES}, in vtest_server_parse_args()
182 {"venus", no_argument, NULL, OPT_VENUS}, in vtest_server_parse_args()
183 {"render-server", no_argument, NULL, OPT_RENDER_SERVER}, in vtest_server_parse_args()
184 {"socket-path", optional_argument, NULL, OPT_SOCKET_PATH}, in vtest_server_parse_args()
195 case -1: in vtest_server_parse_args()
205 printf("multi-clients enabled: clients must trust each other\n"); in vtest_server_parse_args()
222 server.venus = true; in vtest_server_parse_args()
234 printf("Usage: %s [--no-fork] [--no-loop-or-fork] [--multi-clients] " in vtest_server_parse_args()
235 "[--use-glx] [--use-egl-surfaceless] [--use-gles] " in vtest_server_parse_args()
236 "[--rendernode <dev>] [--socket-path <path>] " in vtest_server_parse_args()
238 " [--venus]" in vtest_server_parse_args()
241 " [--render-server]" in vtest_server_parse_args()
271 if (server.venus) { in vtest_server_parse_args()
306 if (ret == -1) { in vtest_server_set_signal_child()
323 if (ret == -1) { in vtest_server_set_signal_segv()
335 return -1; in vtest_server_add_client()
337 client->in_fd = in_fd; in vtest_server_add_client()
338 client->out_fd = out_fd; in vtest_server_add_client()
340 client->input.data.fd = in_fd; in vtest_server_add_client()
341 client->input.read = vtest_block_read; in vtest_server_add_client()
343 client->context_poll_fd = -1; in vtest_server_add_client()
345 list_addtail(&client->head, &server.new_clients); in vtest_server_add_client()
356 if (in_fd == -1) { in vtest_server_open_read_file()
362 if (out_fd == -1) { in vtest_server_open_read_file()
408 int max_fd = -1; in vtest_server_wait_clients()
414 FD_SET(client->in_fd, &read_fds); in vtest_server_wait_clients()
415 max_fd = MAX2(client->in_fd, max_fd); in vtest_server_wait_clients()
417 if (client->context_poll_fd >= 0) { in vtest_server_wait_clients()
418 FD_SET(client->context_poll_fd, &read_fds); in vtest_server_wait_clients()
419 max_fd = MAX2(client->context_poll_fd, max_fd); in vtest_server_wait_clients()
445 if (FD_ISSET(client->in_fd, &read_fds)) { in vtest_server_wait_clients()
446 client->in_fd_ready = true; in vtest_server_wait_clients()
449 if (client->context_poll_fd >= 0) { in vtest_server_wait_clients()
450 if (FD_ISSET(client->context_poll_fd, &read_fds)) { in vtest_server_wait_clients()
451 client->context_need_poll = true; in vtest_server_wait_clients()
453 } else if (client->context) { in vtest_server_wait_clients()
454 client->context_need_poll = true; in vtest_server_wait_clients()
494 if (client->context_need_poll) { in vtest_server_dispatch_clients()
495 vtest_poll_context(client->context); in vtest_server_dispatch_clients()
496 client->context_need_poll = false; in vtest_server_dispatch_clients()
499 if (!client->in_fd_ready) in vtest_server_dispatch_clients()
501 client->in_fd_ready = false; in vtest_server_dispatch_clients()
507 list_del(&client->head); in vtest_server_dispatch_clients()
508 list_addtail(&client->head, &server.inactive_clients); in vtest_server_dispatch_clients()
537 list_del(&client->head); in vtest_server_fork_clients()
538 list_addtail(&client->head, &server.inactive_clients); in vtest_server_fork_clients()
541 list_del(&client->head); in vtest_server_fork_clients()
542 list_addtail(&client->head, &server.active_clients); in vtest_server_fork_clients()
546 list_del(&client->head); in vtest_server_fork_clients()
547 list_addtail(&client->head, &server.inactive_clients); in vtest_server_fork_clients()
559 list_addtail(&client->head, &server.active_clients); in vtest_server_activate_clients()
570 list_addtail(&client->head, &server.inactive_clients); in vtest_server_inactivate_clients()
580 if (client->context) { in vtest_server_tidy_clients()
581 vtest_destroy_context(client->context); in vtest_server_tidy_clients()
584 if (client->in_fd >= 0) { in vtest_server_tidy_clients()
585 close(client->in_fd); in vtest_server_tidy_clients()
588 if (client->out_fd >= 0 && client->out_fd != client->in_fd) { in vtest_server_tidy_clients()
589 close(client->out_fd); in vtest_server_tidy_clients()
666 /* since protocol version 2 */
671 /* since protocol version 3 */
690 ret = client->input.read(&client->input, &header, sizeof(header)); in vtest_client_dispatch_commands()
695 if (!client->context) { in vtest_client_dispatch_commands()
701 ret = vtest_create_context(&client->input, client->out_fd, in vtest_client_dispatch_commands()
702 header[0], &client->context); in vtest_client_dispatch_commands()
718 if (cmd->dispatch == NULL) { in vtest_client_dispatch_commands()
722 /* we should consider per-context dispatch table to get rid of if's */ in vtest_client_dispatch_commands()
723 if (cmd->init_context) { in vtest_client_dispatch_commands()
724 ret = vtest_lazy_init_context(client->context); in vtest_client_dispatch_commands()
728 client->context_poll_fd = vtest_get_context_poll_fd(client->context); in vtest_client_dispatch_commands()
731 vtest_set_current_context(client->context); in vtest_client_dispatch_commands()
733 ret = cmd->dispatch(header[0]); in vtest_client_dispatch_commands()
743 if (server.socket != -1) { in vtest_server_close_socket()
745 server.socket = -1; in vtest_server_close_socket()