public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Lai Jiangshan <jiangshanlai@gmail.com>
Cc: linux-kernel@vger.kernel.org, ying chen <yc1082463@gmail.com>,
	Lai Jiangshan <jiangshan.ljs@antgroup.com>
Subject: Re: [PATCH V3 7/7] workqueue: Process extra works in rescuer when there are no more to rescue
Date: Sat, 22 Nov 2025 04:31:53 -1000	[thread overview]
Message-ID: <aSHJWTSxnN7SP9Vy@slm.duckdns.org> (raw)
In-Reply-To: <CAJhGHyAc376ssH20vuRWjxX5gux0Ocm7efeK-DsC1w4k5A_fhw@mail.gmail.com>

Hello,

On Sat, Nov 22, 2025 at 03:07:25PM +0800, Lai Jiangshan wrote:
...
> But this patch does not really check if memory pressure is still on,
> using (pool->flags & POOL_MANAGER_ACTIVE) can kind of
> achieve it, though not precisely. There is never a precise way,
> but the system has poured some resources to create the rescuer,
> it is better to make the best use of it, like before patch 2/7.
> 
> this patch:
>        if (!pwq->nr_active)
>                 return false;
>        if (!need_to_create_worker(pool)) {
>                if (limited || !list_empty(&pwq->wq->maydays))
>                        return false;
>        }
> 
> with memory pressure test via POOL_MANAGER_ACTIVE:
> 
>        if (!pwq->nr_active)
>                 return false;
>        if (!need_to_create_worker(pool)) {
>                if (limited || !(pool->flags & POOL_MANAGER_ACTIVE) ||
> !list_empty(&pwq->wq->maydays))
>                        return false;
>        }
> 
> What do you think?

Yeah, POOL_MANAGER_ACTIVE seems like a more reliable condition to test.
Let's do that.

Thanks.

-- 
tejun

  reply	other threads:[~2025-11-22 14:31 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-21 14:57 [PATCH V3 0/7] workqueue: Factor the way to assign rescuer work Lai Jiangshan
2025-11-21 14:57 ` [PATCH V3 1/7] workqueue: Factor out assign_rescuer_work() Lai Jiangshan
2025-11-21 14:57 ` [PATCH V3 2/7] workqueue: Only assign rescuer work when really needed Lai Jiangshan
2025-11-21 14:57 ` [PATCH V3 3/7] workqueue: Don't rely on wq->rescuer to stop rescuer Lai Jiangshan
2025-11-21 14:57 ` [PATCH V3 4/7] workqueue: Loop over in rescuer until all its work is done Lai Jiangshan
2025-11-21 19:30   ` Tejun Heo
2025-11-21 14:57 ` [PATCH V3 5/7] workqueue: Process rescuer work items one-by-one using a cursor Lai Jiangshan
2025-11-21 19:05   ` Tejun Heo
2025-11-21 14:57 ` [PATCH V3 6/7] workqueue: Limit number of processed works in rescuer per turn Lai Jiangshan
2025-11-21 19:28   ` Tejun Heo
2025-11-22  6:22     ` Lai Jiangshan
2025-11-22 14:26       ` Tejun Heo
2025-11-21 14:57 ` [PATCH V3 7/7] workqueue: Process extra works in rescuer when there are no more to rescue Lai Jiangshan
2025-11-21 19:29   ` Tejun Heo
2025-11-22  7:07     ` Lai Jiangshan
2025-11-22 14:31       ` Tejun Heo [this message]
2025-11-21 19:57 ` [PATCH V3 0/7] workqueue: Factor the way to assign rescuer work Tejun Heo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aSHJWTSxnN7SP9Vy@slm.duckdns.org \
    --to=tj@kernel.org \
    --cc=jiangshan.ljs@antgroup.com \
    --cc=jiangshanlai@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=yc1082463@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox