diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 1ba4877b17a5..dfa0dfb6b6c0 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -2037,8 +2037,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