Lines Matching refs:wi

90 wait_remove(wait_info_t *wi, int direct)  in wait_remove()  argument
95 if (waitpid(wi->wi_pid, &status, 0) == -1) { in wait_remove()
96 if (wi->wi_parent) in wait_remove()
98 "instance %s waitpid failure: %s\n", wi->wi_fmri, in wait_remove()
103 "instance %s exited with status %d\n", wi->wi_fmri, in wait_remove()
113 if (wi->wi_fd != -1) { in wait_remove()
114 startd_close(wi->wi_fd); in wait_remove()
115 wi->wi_fd = -1; in wait_remove()
117 uu_list_remove(wait_info_list, wi); in wait_remove()
124 utmpx_mark_dead(wi->wi_pid, status, B_FALSE); in wait_remove()
126 if (!direct && !wi->wi_ignore) { in wait_remove()
144 "wait_remove requesting stop of %s\n", wi->wi_fmri); in wait_remove()
145 (void) stop_instance_fmri(wait_hndl, wi->wi_fmri, cause); in wait_remove()
148 uu_list_node_fini(wi, &wi->wi_link, wait_info_pool); in wait_remove()
149 startd_free(wi, sizeof (wait_info_t)); in wait_remove()
162 wait_info_t *wi; in wait_ignore_by_fmri() local
166 for (wi = uu_list_first(wait_info_list); wi != NULL; in wait_ignore_by_fmri()
167 wi = uu_list_next(wait_info_list, wi)) { in wait_ignore_by_fmri()
168 if (strcmp(wi->wi_fmri, fmri) == 0) in wait_ignore_by_fmri()
172 if (wi != NULL) { in wait_ignore_by_fmri()
173 wi->wi_ignore = 1; in wait_ignore_by_fmri()
197 wait_info_t *wi; in wait_register() local
204 wi = startd_alloc(sizeof (wait_info_t)); in wait_register()
206 uu_list_node_init(wi, &wi->wi_link, wait_info_pool); in wait_register()
208 wi->wi_fd = -1; in wait_register()
209 wi->wi_pid = pid; in wait_register()
210 wi->wi_fmri = inst_fmri; in wait_register()
211 wi->wi_parent = am_parent; in wait_register()
212 wi->wi_ignore = 0; in wait_register()
215 (void) uu_list_insert_before(wait_info_list, NULL, wi); in wait_register()
223 wait_remove(wi, direct); in wait_register()
237 wi->wi_fd = fd; in wait_register()
239 if (port_associate(port_fd, PORT_SOURCE_FD, fd, 0, wi)) { in wait_register()
261 wait_info_t *wi; in wait_thread() local
275 wi = pe.portev_user; in wait_thread()
276 assert(wi != NULL); in wait_thread()
277 assert(fd == wi->wi_fd); in wait_thread()
287 "assuming failed\n", wi->wi_fmri, in wait_thread()
301 0, wi)) in wait_thread()
304 "failed\n", fd, wi->wi_fmri); in wait_thread()
309 if (port_associate(port_fd, PORT_SOURCE_FD, fd, 0, wi)) in wait_thread()
312 "failed\n", fd, wi->wi_fmri); in wait_thread()
317 wait_remove(wi, 0); in wait_thread()
332 wait_info_t *wi; in wait_postfork() local
346 for (wi = uu_list_first(wait_info_list); in wait_postfork()
347 wi != NULL; in wait_postfork()
348 wi = uu_list_next(wait_info_list, wi)) { in wait_postfork()
349 if (wi->wi_fd != -1) in wait_postfork()
350 startd_close(wi->wi_fd); in wait_postfork()