diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 872bd6d9be2d1..6d42247eafebc 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -2266,8 +2266,10 @@ static int rescuer_thread(void *__wq) repeat: set_current_state(TASK_INTERRUPTIBLE); - if (kthread_should_stop()) + if (kthread_should_stop()) { + __set_current_state(TASK_RUNNING); return 0; + } /* * See whether any cpu is asking for help. Unbounded