[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aEvNqY5piB02l20T@tiehlicka>
Date: Fri, 13 Jun 2025 09:05:13 +0200
From: Michal Hocko <mhocko@...e.com>
To: Zihuan Zhang <zhangzihuan@...inos.cn>
Cc: David Hildenbrand <david@...hat.com>,
Peter Zijlstra <peterz@...radead.org>, rafael@...nel.org,
len.brown@...el.com, pavel@...nel.org, kees@...nel.org,
mingo@...hat.com, juri.lelli@...hat.com, vincent.guittot@...aro.org,
dietmar.eggemann@....com, rostedt@...dmis.org, bsegall@...gle.com,
mgorman@...e.de, vschneid@...hat.com, akpm@...ux-foundation.org,
lorenzo.stoakes@...cle.com, Liam.Howlett@...cle.com, vbabka@...e.cz,
rppt@...nel.org, surenb@...gle.com, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [RFC PATCH] PM: Optionally block user fork during freeze to
improve performance
On Fri 13-06-25 10:37:42, Zihuan Zhang wrote:
> Hi David,
> Thanks for your advice!
>
> 在 2025/6/10 18:50, David Hildenbrand 写道:
> >
> > Can't this problem be mitigated by simply not scheduling the new fork'ed
> > process while the system is frozen?
> >
> > Or what exact scenario are you worried about?
>
> Let me revisit the core issue for clarity. Under normal conditions, most
> processes in the system are in a sleep state, and only a few are runnable.
> So even with thousands of processes, the freezer generally works reliably
> and completes within a reasonable time
How do you define reasonable time?
> However, in our fork-based test scenario, we observed repeated freeze
> retries.
Does this represent any real life scenario that happens on your system?
In other words how often do you miss your "reasonable time" treshold
while running a regular workload. Does the freezer ever fail?
[...]
> You’re right — blocking fork() is quite intrusive, so it’s worth exploring
> alternatives. We’ll try implementing your idea of preventing the newly
> forked process from being scheduled while the system is freezing, rather
> than failing the fork() call outright.
Just curious, are you interested in global freezer only or is the cgroup
freezer involved as well?
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists