[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5r6yyuleoru7h6wcbdw673nlfzzbsc24sltmfg5hk2mj6a34xa@2xo7a3jhhkef>
Date: Fri, 7 Nov 2025 10:57:54 +0100
From: Michal Koutný <mkoutny@...e.com>
To: Tejun Heo <tj@...nel.org>
Cc: Johannes Weiner <hannes@...xchg.org>, cgroups@...r.kernel.org,
linux-kernel@...r.kernel.org, stable@...r.kernel.org
Subject: Re: [PATCH cgroup/for-6.18-fixes] cgroup: Skip showing PID 0 in
cgroup.procs and cgroup.threads
Hello.
On Thu, Nov 06, 2025 at 12:07:45PM -1000, Tejun Heo <tj@...nel.org> wrote:
> css_task_iter_next() pins and returns a task, but the task can do whatever
> between that and cgroup_procs_show() being called, including dying and
> losing its PID. When that happens, task_pid_vnr() returns 0.
task_pid_vnr() would return 0 also when the process is not from reader's
pidns (IMO more common than the transitional effect).
> Showing "0" in cgroup.procs or cgroup.threads is confusing and can lead to
> surprising outcomes. For example, if a user tries to kill PID 0, it kills
> all processes in the current process group.
It's still info about present processes.
>
> Skip entries with PID 0 by returning SEQ_SKIP.
It's likely OK to skip for these exiting tasks but with the external pidns tasks
in mind, reading cgroup.procs now may give false impression of an empty
cgroup.
Where does the 0 from of the exiting come from? (Could it be
distinguished from foreign pidns?)
Thanks,
Michal
Download attachment "signature.asc" of type "application/pgp-signature" (266 bytes)
Powered by blists - more mailing lists