All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Clark Williams <williams@redhat.com>,
	linux-kernel@vger.kernel.org, torvalds@linux-foundation.org,
	a.p.zijlstra@chello.nl, akpm@linux-foundation.org,
	linux-rt-users@vger.kernel.org
Subject: Re: [GIT RFC PULL rcu/urgent] Prevent Kconfig from asking pointless questions
Date: Tue, 21 Apr 2015 08:42:23 +0200	[thread overview]
Message-ID: <20150421064222.GA22291@gmail.com> (raw)
In-Reply-To: <20150420143440.49e1e537@gandalf.local.home>


* Steven Rostedt <rostedt@goodmis.org> wrote:

> On Mon, 20 Apr 2015 20:28:32 +0200
> Ingo Molnar <mingo@kernel.org> wrote:
> 
> > Instrumentation - especially instrumentation that should have been 
> > implemented mostly in user-space, like ftrace ;-) - is another special 
> > case that should stay as flexible as possible via sysctls, obviously.
> 
> I know I used ftrace as an example, but a more appropriate example
> would be the sched knobs, as this is more about rcu scheduling than
> anything else.
> 
> See:
> 
> sched_autogroup_enabled      sched_rr_timeslice_ms
> sched_child_runs_first       sched_rt_period_us
> sched_domain/                sched_rt_runtime_us
> sched_latency_ns             sched_shares_window_ns
> sched_migration_cost_ns      sched_time_avg_ms
> sched_min_granularity_ns     sched_tunable_scaling
> sched_nr_migrate             sched_wakeup_granularity_ns

You are comparing apples to oranges.

1)

Many of these are only sysctls if CONFIG_SCHED_DEBUG is enabled, see:

 triton:~/tip> git grep const_debug kernel/sched/*.c
 kernel/sched/core.c:const_debug unsigned int sysctl_sched_features =
 kernel/sched/core.c:const_debug unsigned int sysctl_sched_nr_migrate = 32;
 kernel/sched/core.c:const_debug unsigned int sysctl_sched_time_avg = MSEC_PER_SEC;
 kernel/sched/core.c:const_debug unsigned int sysctl_timer_migration = 1;
 kernel/sched/fair.c:const_debug unsigned int sysctl_sched_migration_cost = 500000UL;

and they turn into 'const' otherwise:

 /*
  * Tunables that become constants when CONFIG_SCHED_DEBUG is off:
  */
 #ifdef CONFIG_SCHED_DEBUG
 # include <linux/static_key.h>
 # define const_debug __read_mostly
 #else
 # define const_debug const
 #endif

2)

A handful of them are simple on/off knobs, such as the 
sched_child_runs_first quirk, or the sched_autogroup_enabled.

3)

There's basically just the three sched_rt_* ones that are 'true' 
tunables (not on/off knobs), mostly because of ABI weakness: 
setscheduler() has no interface for them.

Note that modern scheduler policies, like SCHED_DEADLINE, get all 
their policy parameters from the sched_setparam() user-space ABI, they 
are not driven by sysctls.

So my point stands.

Thanks,

	Ingo

  reply	other threads:[~2015-04-21  6:42 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-16 18:38 [GIT RFC PULL rcu/urgent] Prevent Kconfig from asking pointless questions Paul E. McKenney
2015-04-18 13:03 ` Ingo Molnar
2015-04-18 13:34   ` Paul E. McKenney
2015-04-18 14:32     ` Ingo Molnar
2015-04-19  2:05       ` Paul E. McKenney
2015-04-20 16:35         ` Clark Williams
2015-04-20 17:09           ` Paul E. McKenney
2015-04-20 17:59             ` Clark Williams
2015-04-20 18:20               ` Daniel Bristot de Oliveira
2015-04-20 18:01             ` Steven Rostedt
2015-04-20 18:09               ` Ingo Molnar
2015-04-20 18:21                 ` Steven Rostedt
2015-04-20 18:28                   ` Ingo Molnar
2015-04-20 18:34                     ` Steven Rostedt
2015-04-21  6:42                       ` Ingo Molnar [this message]
2015-04-21 13:18                         ` Steven Rostedt
2015-04-21  3:37                   ` Mike Galbraith
2015-04-20 20:40             ` Steven Rostedt
2015-04-20 21:15               ` Paul E. McKenney
2015-04-20 21:50                 ` Clark Williams
2015-04-21  1:22                   ` Paul E. McKenney
2015-04-21 13:12                     ` Steven Rostedt
2015-04-21 15:01                       ` Paul E. McKenney
2015-04-21 15:50                         ` Steven Rostedt
2015-04-21 15:54                           ` Paul E. McKenney

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=20150421064222.GA22291@gmail.com \
    --to=mingo@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=rostedt@goodmis.org \
    --cc=torvalds@linux-foundation.org \
    --cc=williams@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.