Lines Matching refs:rescuer
269 struct worker *rescuer; /* MD: rescue worker */ member
2045 if (!wq->rescuer) in send_mayday()
2057 wake_up_process(wq->rescuer->task); in send_mayday()
2492 struct worker *rescuer = __rescuer; in rescuer_thread() local
2493 struct workqueue_struct *wq = rescuer->rescue_wq; in rescuer_thread()
2494 struct list_head *scheduled = &rescuer->scheduled; in rescuer_thread()
2532 worker_attach_to_pool(rescuer, pool); in rescuer_thread()
2551 process_scheduled_works(rescuer); in rescuer_thread()
2568 if (wq->rescuer && list_empty(&pwq->mayday_node)) { in rescuer_thread()
2592 worker_detach_from_pool(rescuer); in rescuer_thread()
2606 WARN_ON_ONCE(!(rescuer->flags & WORKER_NOT_RUNNING)); in rescuer_thread()
3055 (pwq->wq->saved_max_active == 1 || pwq->wq->rescuer)) { in start_flush_work()
4262 struct worker *rescuer; in init_rescuer() local
4268 rescuer = alloc_worker(NUMA_NO_NODE); in init_rescuer()
4269 if (!rescuer) in init_rescuer()
4272 rescuer->rescue_wq = wq; in init_rescuer()
4273 rescuer->task = kthread_create(rescuer_thread, rescuer, "%s", wq->name); in init_rescuer()
4274 if (IS_ERR(rescuer->task)) { in init_rescuer()
4275 ret = PTR_ERR(rescuer->task); in init_rescuer()
4276 kfree(rescuer); in init_rescuer()
4280 wq->rescuer = rescuer; in init_rescuer()
4281 kthread_bind_mask(rescuer->task, cpu_possible_mask); in init_rescuer()
4282 wake_up_process(rescuer->task); in init_rescuer()
4422 if (wq->rescuer) { in destroy_workqueue()
4423 struct worker *rescuer = wq->rescuer; in destroy_workqueue() local
4427 wq->rescuer = NULL; in destroy_workqueue()
4431 kthread_stop(rescuer->task); in destroy_workqueue()
4432 kfree(rescuer); in destroy_workqueue()