[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJhGHyAy2OVd_q_dtJ+cLX=BuNOa4L7hPn50oj_Y7iwBuNEfRQ@mail.gmail.com>
Date: Thu, 18 Aug 2022 22:44:02 +0800
From: Lai Jiangshan <jiangshanlai@...il.com>
To: Tejun Heo <tj@...nel.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
Lai Jiangshan <jiangshan.ljs@...group.com>
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@...nel.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.
Powered by blists - more mailing lists