On Wed, May 10, 2023 at 06:04:26PM +0200, Johannes Berg wrote: > @@ -2387,7 +2389,13 @@ __acquires(&pool->lock) > */ > lockdep_invariant_state(true); > trace_workqueue_execute_start(work); > - worker->current_func(work); > + if (unlikely(pwq->wq->work_mutex)) { > + mutex_lock(pwq->wq->work_mutex); > + worker->current_func(work); > + mutex_unlock(pwq->wq->work_mutex); > + } else { > + worker->current_func(work); > + } Ah, I don't know about this. This can't be that difficult to do from the callee side, right? Thanks. -- tejun