Messages in this thread | | | From | Lai Jiangshan <> | Date | Thu, 18 Aug 2022 22:44:02 +0800 | Subject | Re: [RFC PATCH 7/8] workqueue: Remove the outer loop in maybe_create_worker() |
| |
On Wed, Aug 17, 2022 at 6:08 AM Tejun Heo <tj@kernel.org> wrote: > > On Thu, Aug 04, 2022 at 04:41:34PM +0800, Lai Jiangshan wrote: > > worker_thread() always does the recheck after getting the manager role, > > so the recheck in the maybe_create_worker() is unneeded and is removed. > > So, before if multiple workers need to be created, a single manager would > create them all. After, we'd end up daisy chaining, right? One manager > creates one worker and goes to process one work item. The new worker wakes > up and becomes the manager and creates another worker and so on. That > doesn't seem like a desirable behavior. >
The recheck is always in the same pool lock critical section, so the behavior isn't changed before/after this patch.
| |