Lines Matching refs:rescuer
251 struct worker *rescuer; /* MD: rescue worker */ member
2021 if (!wq->rescuer) in send_mayday()
2033 wake_up_process(wq->rescuer->task); in send_mayday()
2466 struct worker *rescuer = __rescuer; in rescuer_thread() local
2467 struct workqueue_struct *wq = rescuer->rescue_wq; in rescuer_thread()
2468 struct list_head *scheduled = &rescuer->scheduled; in rescuer_thread()
2506 worker_attach_to_pool(rescuer, pool); in rescuer_thread()
2525 process_scheduled_works(rescuer); in rescuer_thread()
2542 if (wq->rescuer && list_empty(&pwq->mayday_node)) { in rescuer_thread()
2566 worker_detach_from_pool(rescuer); in rescuer_thread()
2580 WARN_ON_ONCE(!(rescuer->flags & WORKER_NOT_RUNNING)); in rescuer_thread()
3021 (pwq->wq->saved_max_active == 1 || pwq->wq->rescuer)) { in start_flush_work()
4215 struct worker *rescuer; in init_rescuer() local
4221 rescuer = alloc_worker(NUMA_NO_NODE); in init_rescuer()
4222 if (!rescuer) in init_rescuer()
4225 rescuer->rescue_wq = wq; in init_rescuer()
4226 rescuer->task = kthread_create(rescuer_thread, rescuer, "%s", wq->name); in init_rescuer()
4227 if (IS_ERR(rescuer->task)) { in init_rescuer()
4228 ret = PTR_ERR(rescuer->task); in init_rescuer()
4229 kfree(rescuer); in init_rescuer()
4233 wq->rescuer = rescuer; in init_rescuer()
4234 kthread_bind_mask(rescuer->task, cpu_possible_mask); in init_rescuer()
4235 wake_up_process(rescuer->task); in init_rescuer()
4375 if (wq->rescuer) { in destroy_workqueue()
4376 struct worker *rescuer = wq->rescuer; in destroy_workqueue() local
4380 wq->rescuer = NULL; in destroy_workqueue()
4384 kthread_stop(rescuer->task); in destroy_workqueue()
4385 kfree(rescuer); in destroy_workqueue()