Lines Matching refs:new_work

2233 	pm_dep_wk_t	*new_work;  in pm_dispatch_to_dep_thread()  local
2235 new_work = kmem_zalloc(sizeof (pm_dep_wk_t), KM_SLEEP); in pm_dispatch_to_dep_thread()
2236 new_work->pdw_type = cmd; in pm_dispatch_to_dep_thread()
2237 new_work->pdw_wait = wait; in pm_dispatch_to_dep_thread()
2238 new_work->pdw_done = 0; in pm_dispatch_to_dep_thread()
2239 new_work->pdw_ret = 0; in pm_dispatch_to_dep_thread()
2240 new_work->pdw_pwr = cached_pwr; in pm_dispatch_to_dep_thread()
2241 cv_init(&new_work->pdw_cv, NULL, CV_DEFAULT, NULL); in pm_dispatch_to_dep_thread()
2243 new_work->pdw_keeper = kmem_zalloc(strlen(keeper) + 1, in pm_dispatch_to_dep_thread()
2245 (void) strcpy(new_work->pdw_keeper, keeper); in pm_dispatch_to_dep_thread()
2248 new_work->pdw_kept = kmem_zalloc(strlen(kept) + 1, KM_SLEEP); in pm_dispatch_to_dep_thread()
2249 (void) strcpy(new_work->pdw_kept, kept); in pm_dispatch_to_dep_thread()
2253 pm_dep_thread_workq = new_work; in pm_dispatch_to_dep_thread()
2254 pm_dep_thread_tail = new_work; in pm_dispatch_to_dep_thread()
2255 new_work->pdw_next = NULL; in pm_dispatch_to_dep_thread()
2257 pm_dep_thread_tail->pdw_next = new_work; in pm_dispatch_to_dep_thread()
2258 pm_dep_thread_tail = new_work; in pm_dispatch_to_dep_thread()
2259 new_work->pdw_next = NULL; in pm_dispatch_to_dep_thread()
2264 while (!new_work->pdw_done) in pm_dispatch_to_dep_thread()
2265 cv_wait(&new_work->pdw_cv, &pm_dep_thread_lock); in pm_dispatch_to_dep_thread()
2270 *res = new_work->pdw_ret; in pm_dispatch_to_dep_thread()
2275 if (new_work->pdw_keeper) in pm_dispatch_to_dep_thread()
2276 kmem_free(new_work->pdw_keeper, in pm_dispatch_to_dep_thread()
2277 strlen(new_work->pdw_keeper) + 1); in pm_dispatch_to_dep_thread()
2278 if (new_work->pdw_kept) in pm_dispatch_to_dep_thread()
2279 kmem_free(new_work->pdw_kept, in pm_dispatch_to_dep_thread()
2280 strlen(new_work->pdw_kept) + 1); in pm_dispatch_to_dep_thread()
2281 kmem_free(new_work, sizeof (pm_dep_wk_t)); in pm_dispatch_to_dep_thread()