public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Frederic Weisbecker <fweisbec@gmail.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Chris Metcalf <cmetcalf@mellanox.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Luiz Capitulino <lcapitulino@redhat.com>,
	Christoph Lameter <cl@linux.com>,
	"Paul E . McKenney" <paulmck@linux.vnet.ibm.com>,
	Ingo Molnar <mingo@kernel.org>, Mike Galbraith <efault@gmx.de>,
	Rik van Riel <riel@redhat.com>, Wanpeng Li <kernellwp@gmail.com>
Subject: Re: [RFC PATCH 12/12] housekeeping: Reimplement isolcpus on housekeeping
Date: Mon, 28 Aug 2017 17:27:15 +0200	[thread overview]
Message-ID: <20170828152714.GB32618@lerouge> (raw)
In-Reply-To: <20170828133116.zu3xujkkmb4cmks2@hirez.programming.kicks-ass.net>

On Mon, Aug 28, 2017 at 03:31:16PM +0200, Peter Zijlstra wrote:
> On Mon, Aug 28, 2017 at 03:23:06PM +0200, Frederic Weisbecker wrote:
> > On Mon, Aug 28, 2017 at 12:09:57PM +0200, Peter Zijlstra wrote:
> > > On Wed, Aug 23, 2017 at 03:51:11AM +0200, Frederic Weisbecker wrote:
> > > > We want to centralize the isolation features on the housekeeping
> > > > subsystem and scheduler isolation is a significant part of it.
> > > > 
> > > > While at it, this is a proposition for a reimplementation of isolcpus=
> > > > that doesn't involve  scheduler domain isolation. Therefore this
> > > > brings a behaviour change: all user tasks inherit init/1 affinity which
> > > > avoid the isolcpus= range. But if a task later overrides its affinity
> > > > which turns out to intersect an isolated CPU, load balancing may occur
> > > > on it.
> > > > 
> > > > OTOH such a reimplementation that doesn't shortcut scheduler internals
> > > > makes a better candidate for an interface extension to cpuset.
> > > 
> > > Not sure we can do this. It'll break users that rely on the no
> > > scheduling thing, that's a well documented part of isolcpus.
> > 
> > That was my worry :-s  That NULL domain was probably a design mistake and
> > I fear we now have to maintain it.
> 
> I'm fairly sure that was very intentional. If you want to isolate stuff
> you don't want load-balancing.

Yes I guess that was intentional. In fact having NULL domains is convenient
as it also isolates from many things: tasks, workqueues, timers.

Although for example I guess (IIUC) that if you create an unbound timer on a NULL
domain, it will be stuck on it for ever as we can't walk any hierarchy from the
current CPU domain. I'm not sure how much that can apply to unbound workqueues
as well. But the thing is with NULL domains: things can not migrate in and neither
can them migrate out, which is not exactly what CPU isolation wants.

> You get the same NULL domain with cpusets if you disable balancing for a set of CPUs.

Ok, I didn't know that.

> 
> Now, I completely hate the isolcpus feature and wish is a speedy death,
> but replacing it with something sensible is difficult because cgroups
> :-(

Ah, that would break cgroup somehow?

  reply	other threads:[~2017-08-28 15:27 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-23  1:50 [RFC 00/12] Introduce housekeeping subsystem v2 Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 01/12] housekeeping: Move housekeeping related code to its own file Frederic Weisbecker
2017-08-31 20:16   ` Rik van Riel
2017-08-31 22:58     ` Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 02/12] watchdog: Use housekeeping_cpumask() instead of ad-hoc version Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 03/12] housekeeping: Provide a dynamic off-case to housekeeping_any_cpu() Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 04/12] housekeeping: Make housekeeping cpumask private Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 05/12] housekeeping: Use its own static key Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 06/12] housekeeping: Rename is_housekeeping_cpu to housekeeping_cpu Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 07/12] housekeeping: Move it under own config, independant from NO_HZ Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 08/12] housekeeping: Introduce housekeeping flags Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 09/12] workqueue: Affine unbound workqueues to housekeeping cpumask Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 10/12] housekeeping: Affine unbound kthreads Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 11/12] housekeeping: Handle nohz_full= parameter Frederic Weisbecker
2017-08-23  1:51 ` [RFC PATCH 12/12] housekeeping: Reimplement isolcpus on housekeeping Frederic Weisbecker
2017-08-23 14:55   ` Christopher Lameter
2017-08-24 13:19     ` Frederic Weisbecker
2017-08-28 10:10     ` Peter Zijlstra
2017-08-28 15:38       ` Christopher Lameter
2017-08-28 10:09   ` Peter Zijlstra
2017-08-28 13:23     ` Frederic Weisbecker
2017-08-28 13:31       ` Peter Zijlstra
2017-08-28 15:27         ` Frederic Weisbecker [this message]
2017-08-28 16:24           ` Peter Zijlstra
2017-08-28 16:53             ` Christopher Lameter
2017-08-28 17:33             ` Frederic Weisbecker
2017-08-31 18:53               ` Thomas Gleixner
2017-08-31 23:00                 ` Frederic Weisbecker

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=20170828152714.GB32618@lerouge \
    --to=fweisbec@gmail.com \
    --cc=cl@linux.com \
    --cc=cmetcalf@mellanox.com \
    --cc=efault@gmx.de \
    --cc=kernellwp@gmail.com \
    --cc=lcapitulino@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=tglx@linutronix.de \
    /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