public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Frederic Weisbecker <fweisbec@gmail.com>
To: Dave Jones <davej@redhat.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	rostedt@goodmis.org
Subject: Re: nohz: Warn if the machine can not perform nohz_full
Date: Mon, 15 Jul 2013 19:18:02 +0200	[thread overview]
Message-ID: <20130715171800.GD6442@somewhere> (raw)
In-Reply-To: <20130715170859.GA25570@redhat.com>

On Mon, Jul 15, 2013 at 01:08:59PM -0400, Dave Jones wrote:
>  > Gitweb:     http://git.kernel.org/linus/;a=commit;h=e12d0271774fea9fddf1e2a7952a0bffb2ee8e8b
>  > Commit:     e12d0271774fea9fddf1e2a7952a0bffb2ee8e8b
>  > Parent:     7d132055814ef17a6c7b69f342244c410a5e000f
>  > Author:     Steven Rostedt <rostedt@goodmis.org>
>  > AuthorDate: Fri May 10 17:12:28 2013 -0400
>  > Committer:  Frederic Weisbecker <fweisbec@gmail.com>
>  > CommitDate: Thu Jun 20 01:15:51 2013 +0200
>  > 
>  >     nohz: Warn if the machine can not perform nohz_full
>  >     
>  >     If the user configures NO_HZ_FULL and defines nohz_full=XXX on the
>  >     kernel command line, or enables NO_HZ_FULL_ALL, but nohz fails
>  >     due to the machine having a unstable clock, warn about it.
>  >     
>  >     We do not want users thinking that they are getting the benefit
>  >     of nohz when their machine can not support it.
>  > ---
>  >  kernel/time/tick-sched.c |    5 +++++
>  >  1 files changed, 5 insertions(+), 0 deletions(-)
>  > 
>  > diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
>  > index f420813..d87d22c 100644
>  > --- a/kernel/time/tick-sched.c
>  > +++ b/kernel/time/tick-sched.c
>  > @@ -178,6 +178,11 @@ static bool can_stop_full_tick(void)
>  >  	 */
>  >  	if (!sched_clock_stable) {
>  >  		trace_tick_stop(0, "unstable sched clock\n");
>  > +		/*
>  > +		 * Don't allow the user to think they can get
>  > +		 * full NO_HZ with this machine.
>  > +		 */
>  > +		WARN_ONCE(1, "NO_HZ FULL will not work with unstable sched clock");
>  >  		return false;
>  
> So I guess you guys never want this to be enabled on distro kernels ?
> If that's the case, can you add something to that effect in Kconfig ?

I believe we want it to be enabled on distros in the long term. But right now it would
be a bad idea until the off case (nohz_full= parameter empty) is carefully optimized.
I'm currently working on that.

Now for the unstable tsc, which is what it's about on the above code block, we need
the tick to be there to leverage the sched clock madness. May be there could be some
other solution that could work along full dynticks but for now we chose the easy path.

Are broken TSCs that common?

Also what is the preffered way to tell the distros that they shouldn't enable that option
for now? Here is what we currently have in the tail of the related Kconfig help:

        This is implemented at the expense of some overhead in user <-> kernel
        transitions: syscalls, exceptions and interrupts. Even when it's
        dynamically off.

        Say N.

  reply	other threads:[~2013-07-15 17:18 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-15 17:08 nohz: Warn if the machine can not perform nohz_full Dave Jones
2013-07-15 17:18 ` Frederic Weisbecker [this message]
2013-07-15 17:24   ` Dave Jones
2013-07-15 17:38     ` Dave Jones
2013-07-15 18:49       ` Steven Rostedt
2013-07-15 18:56         ` Dave Jones
2013-07-15 19:30           ` Steven Rostedt
2013-07-16  1:10             ` Frederic Weisbecker
2013-07-16  1:05         ` Frederic Weisbecker
2013-07-16 14:22           ` [PATCH] nohz: Do not warn about unstable tsc unless user uses nohz_full Steven Rostedt
2013-07-16 16:12             ` Frederic Weisbecker
2013-07-16  1:03       ` nohz: Warn if the machine can not perform nohz_full Frederic Weisbecker
2013-07-16  1:01     ` 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=20130715171800.GD6442@somewhere \
    --to=fweisbec@gmail.com \
    --cc=davej@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rostedt@goodmis.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