public inbox for cgroups@vger.kernel.org
 help / color / mirror / Atom feed
From: Waiman Long <longman@redhat.com>
To: Tejun Heo <tj@kernel.org>
Cc: Zefan Li <lizefan.x@bytedance.com>,
	Johannes Weiner <hannes@cmpxchg.org>,
	Jonathan Corbet <corbet@lwn.net>, Shuah Khan <shuah@kernel.org>,
	linux-kernel@vger.kernel.org, cgroups@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org,
	Juri Lelli <juri.lelli@redhat.com>,
	Valentin Schneider <vschneid@redhat.com>,
	Frederic Weisbecker <frederic@kernel.org>,
	Mrunal Patel <mpatel@redhat.com>,
	Ryan Phillips <rphillips@redhat.com>,
	Brent Rowsell <browsell@redhat.com>,
	Peter Hunt <pehunt@redhat.com>, Phil Auld <pauld@redhat.com>
Subject: Re: [PATCH v4 8/9] cgroup/cpuset: Documentation update for partition
Date: Mon, 10 Jul 2023 23:24:37 -0400	[thread overview]
Message-ID: <82aeb5aa-7d69-78dd-bb26-60a51dc8a839@redhat.com> (raw)
In-Reply-To: <ZKyrP74UzVb4Ltwi@slm.duckdns.org>

On 7/10/23 21:07, Tejun Heo wrote:
> Hello,
>
> On Mon, Jul 10, 2023 at 08:53:18PM -0400, Waiman Long wrote:
>> For local partition, it doesn't make sense to have a cpust.cpus.exclusive
>> that is not the same as cpuset.cpus as it artificially reduce the set of
>> CPUs that can be used in a partition. In the case of a remote partition, the
> Yeah, I was wondering about local partitions. "Automatic but can be
> overridden" behavior becomes confusing if it's difficult for the user to
> easily tell which part is automatic when. I wonder whether it'd be better to
> make the condition static - e.g. for a partition cgroup, cpus.exclusive
> always contains all bits in cpus no matter what value is written to it. Or,
> if we separate out cpus.exclusive and cpus.exclusive.effective, no matter
> what cpus.exclusive is set, a partition root's cpus.exclusive.effective
> always includes all bits in cpus.effective.

With no offline CPUs, cpus.effective should be the same as 
cpus.exclusive.effective for a valid partition root. Here 
cpus.exclusive.effective is a bit different from cpus.effective as it 
can contain offline cpus. It also mean that adding 
cpus.exclusive.effective can be redundant.

As said before, I try to avoid adding new cpuset control file unless 
absolutely necessary. I now have a slight different proposal. Once 
manually set, I can keep cpuset.cpus.exclusive invariant. I do need to 
do a bit more work when enabling a partition root to find out the 
effective set of exclusive CPUs to be used or make the partition invalid 
if no exclusive CPU is available. I still want to do a initial check 
when setting cpuset.cpus.exclusive to make sure that the value is at 
least valid at the beginning.

Do you think this is an acceptable compromise?

Thanks,
Longman


  reply	other threads:[~2023-07-11  3:24 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-27 14:34 [PATCH v4 0/9] cgroup/cpuset: Support remote partitions Waiman Long
2023-06-27 14:35 ` [PATCH v4 1/9] cgroup/cpuset: Inherit parent's load balance state in v2 Waiman Long
2023-06-27 14:35 ` [PATCH v4 2/9] cgroup/cpuset: Extract out CS_CPU_EXCLUSIVE & CS_SCHED_LOAD_BALANCE handling Waiman Long
2023-06-27 14:35 ` [PATCH v4 3/9] cgroup/cpuset: Improve temporary cpumasks handling Waiman Long
     [not found] ` <20230627143508.1576882-1-longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2023-06-27 14:35   ` [PATCH v4 4/9] cgroup/cpuset: Allow suppression of sched domain rebuild in update_cpumasks_hier() Waiman Long
2023-07-10 21:01     ` Tejun Heo
2023-06-27 14:35   ` [PATCH v4 8/9] cgroup/cpuset: Documentation update for partition Waiman Long
2023-07-10 21:30     ` Tejun Heo
     [not found]       ` <ZKx4ZJowRhRtjZxB-NiLfg/pYEd1N0TnZuCh8vA@public.gmane.org>
2023-07-11  0:21         ` Waiman Long
2023-07-11  0:42           ` Tejun Heo
2023-07-11  0:53             ` Waiman Long
     [not found]               ` <a429e60a-fc4f-60b0-3978-71596fed9542-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2023-07-11  1:07                 ` Tejun Heo
2023-07-11  3:24                   ` Waiman Long [this message]
2023-06-27 14:35 ` [PATCH v4 5/9] cgroup/cpuset: Add cpuset.cpus.exclusive for v2 Waiman Long
2023-06-27 14:35 ` [PATCH v4 6/9] cgroup/cpuset: Introduce remote partition Waiman Long
2023-06-27 14:35 ` [PATCH v4 7/9] cgroup/cpuset: Check partition conflict with housekeeping setup Waiman Long
2023-06-27 14:35 ` [PATCH v4 9/9] cgroup/cpuset: Extend test_cpuset_prs.sh to test remote partition Waiman Long
2023-07-10 21:08 ` [PATCH v4 0/9] cgroup/cpuset: Support remote partitions Tejun Heo
2023-07-11  0:33   ` Waiman Long
2023-07-11  1:00     ` Tejun Heo
2023-07-11  1:38       ` Waiman Long
2023-07-11  1:45         ` 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=82aeb5aa-7d69-78dd-bb26-60a51dc8a839@redhat.com \
    --to=longman@redhat.com \
    --cc=browsell@redhat.com \
    --cc=cgroups@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=frederic@kernel.org \
    --cc=hannes@cmpxchg.org \
    --cc=juri.lelli@redhat.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=lizefan.x@bytedance.com \
    --cc=mpatel@redhat.com \
    --cc=pauld@redhat.com \
    --cc=pehunt@redhat.com \
    --cc=rphillips@redhat.com \
    --cc=shuah@kernel.org \
    --cc=tj@kernel.org \
    --cc=vschneid@redhat.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