linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Waiman Long <longman@redhat.com>
Cc: "Michal Koutný" <mkoutny@suse.com>,
	"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>
Subject: Re: [RFC PATCH 0/5] cgroup/cpuset: A new "isolcpus" paritition
Date: Fri, 5 May 2023 06:03:48 -1000	[thread overview]
Message-ID: <ZFUo5IYAIwTEKR4_@slm.duckdns.org> (raw)
In-Reply-To: <deb7b684-3d7c-b3ae-7b36-5b7ba2dd8001@redhat.com>

On Wed, May 03, 2023 at 11:01:36PM -0400, Waiman Long wrote:
> 
> On 5/2/23 18:27, Michal Koutný wrote:
> > On Tue, May 02, 2023 at 05:26:17PM -0400, Waiman Long <longman@redhat.com> wrote:
> > > In the new scheme, the available cpus are still directly passed down to a
> > > descendant cgroup. However, isolated CPUs (or more generally CPUs dedicated
> > > to a partition) have to be exclusive. So what the cpuset.cpus.reserve does
> > > is to identify those exclusive CPUs that can be excluded from the
> > > effective_cpus of the parent cgroups before they are claimed by a child
> > > partition. Currently this is done automatically when a child partition is
> > > created off a parent partition root. The new scheme will break it into 2
> > > separate steps without the requirement that the parent of a partition has to
> > > be a partition root itself.
> > new scheme
> >    1st step:
> >    echo C >p/cpuset.cpus.reserve
> >    # p/cpuset.cpus.effective == A-C (1)
> >    2nd step (claim):
> >    echo C' >p/c/cpuset.cpus # C'⊆C
> >    echo root >p/c/cpuset.cpus.partition
> 
> It is something like that. However, the current scheme of automatic
> reservation is also supported, i.e. cpuset.cpus.reserve will be set
> automatically when the child cgroup becomes a valid partition as long as the
> cpuset.cpus.reserve file is not written to. This is for backward
> compatibility.
> 
> Once it is written to, automatic mode will end and users have to manually
> set it afterward.

I really don't like the implicit switching behavior. This is interface
behavior modifying internal state that userspace can't view or control
directly. Regardless of how the rest of the discussion develops, this part
should be improved (e.g. would it work to always try to auto-reserve if the
cpu isn't already reserved?).

Thanks.

-- 
tejun

  reply	other threads:[~2023-05-05 16:03 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-12 15:37 [RFC PATCH 0/5] cgroup/cpuset: A new "isolcpus" paritition Waiman Long
2023-04-12 19:28 ` Tejun Heo
     [not found]   ` <1ce6a073-e573-0c32-c3d8-f67f3d389a28@redhat.com>
2023-04-12 20:22     ` Tejun Heo
2023-04-12 20:33       ` Waiman Long
2023-04-13  0:03         ` Tejun Heo
2023-04-13  0:26           ` Waiman Long
2023-04-13  0:33             ` Tejun Heo
2023-04-13  0:55               ` Waiman Long
2023-04-13  1:17                 ` Tejun Heo
2023-04-13  1:55                   ` Waiman Long
2023-04-14  1:22                     ` Waiman Long
2023-04-14 16:54                       ` Tejun Heo
2023-04-14 17:29                         ` Waiman Long
2023-04-14 17:34                           ` Tejun Heo
2023-04-14 17:38                             ` Waiman Long
2023-04-14 19:06                               ` Waiman Long
2023-05-02 18:01                                 ` Michal Koutný
2023-05-02 21:26                                   ` Waiman Long
2023-05-02 22:27                                     ` Michal Koutný
2023-05-04  3:01                                       ` Waiman Long
2023-05-05 16:03                                         ` Tejun Heo [this message]
2023-05-05 16:25                                           ` Waiman Long
2023-05-08  1:03                                             ` Waiman Long
2023-05-22 19:49                                               ` Tejun Heo
2023-05-28 21:18                                                 ` Waiman Long
2023-06-05 18:03                                                   ` Tejun Heo
2023-06-05 20:00                                                     ` Waiman Long
2023-06-05 20:27                                                       ` Tejun Heo
2023-06-06  2:47                                                         ` Waiman Long
2023-06-06 19:58                                                           ` Tejun Heo
2023-06-06 20:11                                                             ` Waiman Long
2023-06-06 20:13                                                               ` 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=ZFUo5IYAIwTEKR4_@slm.duckdns.org \
    --to=tj@kernel.org \
    --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=longman@redhat.com \
    --cc=mkoutny@suse.com \
    --cc=shuah@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;
as well as URLs for NNTP newsgroup(s).