From: Waiman Long <llong@redhat.com>
To: "Michal Koutný" <mkoutny@suse.com>, "Waiman Long" <llong@redhat.com>
Cc: Sun Shaojie <sunshaojie@kylinos.cn>,
chenridong@huaweicloud.com, cgroups@vger.kernel.org,
hannes@cmpxchg.org, linux-kernel@vger.kernel.org,
linux-kselftest@vger.kernel.org, shuah@kernel.org, tj@kernel.org
Subject: Re: [PATCH v5] cpuset: Avoid invalidating sibling partitions on cpuset.cpus conflict.
Date: Fri, 12 Dec 2025 23:58:53 -0500 [thread overview]
Message-ID: <1e2eef0a-4637-4b4f-aea5-71e3e519757d@redhat.com> (raw)
In-Reply-To: <3jkvuruuxdykpxjjdwhuqjfqi4nrtxojotswaoc7ehuwxp4s32@hfrvfato6q5b>
On 12/8/25 9:32 AM, Michal Koutný wrote:
> Hi Waiman.
>
> On Wed, Nov 26, 2025 at 02:43:50PM -0500, Waiman Long <llong@redhat.com> wrote:
>> Modification to cpumasks are all serialized by the cpuset_mutex. If you are
>> referring to 2 or more tasks doing parallel updates to various cpuset
>> control files of sibling cpusets, the results can actually vary depending on
>> the actual serialization results of those operations.
> I meant the latter when the difference in results when concurrent tasks
> do the update (e.g. two containers start in parallel), I don't see an
> issue with the race wrt consistency of in-kernel data. We're on the same
> page here.
>
>> One difference between cpuset.cpus and cpuset.cpus.exclusive is the fact
>> that operations on cpuset.cpus.exclusive can fail if the result is not
>> exclusive WRT sibling cpusets, but becoming a valid partition is guaranteed
>> unless none of the exclusive CPUs are passed down from the parent. The use
>> of cpuset.cpus.exclusive is required for creating remote partition.
>>
>> OTOH, changes to cpuset.cpus will never fail, but becoming a valid partition
>> root is not guaranteed and is limited to the creation of local partition
>> only.
>>
>> Does that answer your question?
> It does help my understanding. Do you envision that remote and local
> partitions should be used together (in one subtree)?
It should be rare to have both remote and local partition enabled in the
same system, though it is not disallowed. The local partition should
only be used on system that run a small number of applications with one
or just a few that need partition support. For systems that run a large
number of containerized applications like a Kubernetes managed system,
local partition cannot be used because of the way container management
is being done as the actual cgroups associated with a container can be a
bit far from the cgroup root. Remote partition was created for such a
use case where local partition will be used at all.
Cheers,
Longman
next prev parent reply other threads:[~2025-12-13 4:59 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-17 1:57 [PATCH v3 0/1] cpuset: relax the overlap check for cgroup-v2 Sun Shaojie
2025-11-17 1:57 ` [PATCH v4 1/1] " Sun Shaojie
2025-11-17 7:45 ` Chen Ridong
2025-11-17 10:00 ` Sun Shaojie
2025-11-17 11:37 ` Chen Ridong
2025-11-19 10:57 ` [PATCH v5] cpuset: Avoid invalidating sibling partitions on cpuset.cpus conflict Sun Shaojie
2025-11-19 13:20 ` Michal Koutný
2025-11-20 0:57 ` Chen Ridong
2025-11-20 13:07 ` Sun Shaojie
2025-11-20 13:25 ` Chen Ridong
2025-11-21 10:33 ` Sun Shaojie
2025-11-22 1:19 ` Chen Ridong
2025-11-24 10:21 ` Sun Shaojie
2025-11-20 13:05 ` Sun Shaojie
2025-11-26 14:13 ` Michal Koutný
2025-11-27 1:57 ` Chen Ridong
2025-12-01 9:42 ` Sun Shaojie
2025-11-20 0:51 ` Chen Ridong
2025-11-20 13:07 ` Sun Shaojie
2025-11-20 13:45 ` Chen Ridong
2025-11-21 10:32 ` Sun Shaojie
2025-11-22 1:33 ` Chen Ridong
2025-11-24 10:20 ` Sun Shaojie
2025-11-24 11:33 ` Chen Ridong
2025-11-26 12:29 ` Sun Shaojie
2025-11-24 22:30 ` Waiman Long
2025-11-26 12:31 ` Sun Shaojie
2025-11-26 14:13 ` Michal Koutný
2025-11-26 19:43 ` Waiman Long
2025-11-27 1:55 ` Chen Ridong
2025-12-01 9:44 ` Sun Shaojie
2025-12-08 14:31 ` Michal Koutný
2025-12-10 10:11 ` Sun Shaojie
2025-12-11 10:59 ` Michal Koutný
2025-12-12 10:10 ` Sun Shaojie
2025-12-13 0:52 ` Chen Ridong
2025-12-17 9:09 ` Sun Shaojie
2025-12-08 14:32 ` Michal Koutný
2025-12-13 4:58 ` Waiman Long [this message]
2025-12-01 9:38 ` [PATCH v6] " Sun Shaojie
2025-12-17 9:45 ` [PING][PATCH " Sun Shaojie
2025-12-23 6:06 ` Waiman Long
2025-12-22 15:26 ` [PATCH " Michal Koutný
2025-12-23 6:03 ` Waiman Long
2025-12-25 7:30 ` Waiman Long
2025-11-19 11:03 ` [PATCH v4 1/1] cpuset: relax the overlap check for cgroup-v2 Sun Shaojie
2025-11-18 17:52 ` Michal Koutný
2025-11-19 11:04 ` Sun Shaojie
2025-11-18 19:53 ` Waiman Long
2025-11-19 11:05 ` Sun Shaojie
2025-11-17 3:23 ` [PATCH v3 0/1] " Chen Ridong
2025-11-17 5:58 ` Sun Shaojie
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=1e2eef0a-4637-4b4f-aea5-71e3e519757d@redhat.com \
--to=llong@redhat.com \
--cc=cgroups@vger.kernel.org \
--cc=chenridong@huaweicloud.com \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=mkoutny@suse.com \
--cc=shuah@kernel.org \
--cc=sunshaojie@kylinos.cn \
--cc=tj@kernel.org \
/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