Lines Matching defs:spawn_data
2329 struct spawn_exec_data *spawn_data = arg;
2344 struct posix_spawnattr *attrs = spawn_data->sed_attrs;
2349 mutex_enter(&spawn_data->sed_mtx_child);
2350 cv_signal(&spawn_data->sed_cv_child_ready);
2351 mutex_exit(&spawn_data->sed_mtx_child);
2359 error = handle_posix_spawn_attrs(attrs, spawn_data->sed_parent);
2364 error = handle_posix_spawn_file_actions(spawn_data->sed_actions);
2369 error = execve_runproc(l, &spawn_data->sed_exec, parent_is_waiting,
2378 mutex_enter(&spawn_data->sed_mtx_child);
2379 cv_signal(&spawn_data->sed_cv_child_ready);
2380 mutex_exit(&spawn_data->sed_mtx_child);
2384 spawn_exec_data_release(spawn_data);
2402 * taken ownership of the sed_exec part of spawn_data,
2406 execve_free_data(&spawn_data->sed_exec);
2411 mutex_enter(&spawn_data->sed_mtx_child);
2412 spawn_data->sed_error = error;
2413 cv_signal(&spawn_data->sed_cv_child_ready);
2414 mutex_exit(&spawn_data->sed_mtx_child);
2420 spawn_exec_data_release(spawn_data);
2570 struct spawn_exec_data *spawn_data;
2577 /* Allocate and init spawn_data */
2578 spawn_data = kmem_zalloc(sizeof(*spawn_data), KM_SLEEP);
2579 spawn_data->sed_refcnt = 1; /* only parent so far */
2580 cv_init(&spawn_data->sed_cv_child_ready, "pspawn");
2581 mutex_init(&spawn_data->sed_mtx_child, MUTEX_DEFAULT, IPL_NONE);
2582 mutex_enter(&spawn_data->sed_mtx_child);
2586 * in spawn_data.
2589 envp, fetch, &spawn_data->sed_exec);
2732 spawn_data->sed_actions = fa;
2733 spawn_data->sed_attrs = sa;
2735 spawn_data->sed_parent = p1;
2738 lwp_create(l1, p2, uaddr, 0, NULL, 0, spawn_return, spawn_data,
2765 spawn_data->sed_refcnt = 2; /* child gets it as well */
2817 cv_wait(&spawn_data->sed_cv_child_ready, &spawn_data->sed_mtx_child);
2818 error = spawn_data->sed_error;
2819 mutex_exit(&spawn_data->sed_mtx_child);
2820 spawn_exec_data_release(spawn_data);
2847 execve_free_data(&spawn_data->sed_exec);
2851 mutex_exit(&spawn_data->sed_mtx_child);
2852 spawn_exec_data_release(spawn_data);