All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: "Ross Green" <rgkernel@gmail.com>,
	"John Stultz" <john.stultz@linaro.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Peter Zijlstra" <peterz@infradead.org>,
	lkml <linux-kernel@vger.kernel.org>,
	"Ingo Molnar" <mingo@kernel.org>,
	"Lai Jiangshan" <jiangshanlai@gmail.com>,
	dipankar@in.ibm.com, "Andrew Morton" <akpm@linux-foundation.org>,
	"Josh Triplett" <josh@joshtriplett.org>,
	rostedt <rostedt@goodmis.org>,
	"David Howells" <dhowells@redhat.com>,
	"Eric Dumazet" <edumazet@google.com>,
	"Darren Hart" <dvhart@linux.intel.com>,
	"Frédéric Weisbecker" <fweisbec@gmail.com>,
	"Oleg Nesterov" <oleg@redhat.com>,
	"pranith kumar" <bobby.prani@gmail.com>
Subject: Re: rcu_preempt self-detected stall on CPU from 4.5-rc3, since 3.17
Date: Tue, 23 Feb 2016 12:55:22 -0800	[thread overview]
Message-ID: <20160223205522.GT3522@linux.vnet.ibm.com> (raw)
In-Reply-To: <686568926.5862.1456259651418.JavaMail.zimbra@efficios.com>

On Tue, Feb 23, 2016 at 08:34:11PM +0000, Mathieu Desnoyers wrote:
> ----- On Feb 21, 2016, at 1:15 PM, Ross Green rgkernel@gmail.com wrote:
> 
> > On Sun, Feb 21, 2016 at 4:04 PM, Ross Green <rgkernel@gmail.com> wrote:
> >> On Sat, Feb 20, 2016 at 5:32 PM, Paul E. McKenney
> >> <paulmck@linux.vnet.ibm.com> wrote:
> >>> On Sat, Feb 20, 2016 at 03:34:30PM +1100, Ross Green wrote:
> >>>> On Sat, Feb 20, 2016 at 4:33 AM, Paul E. McKenney
> >>>> <paulmck@linux.vnet.ibm.com> wrote:
> >>>> > On Thu, Feb 18, 2016 at 08:13:18PM -0800, John Stultz wrote:
> >>>> >> On Thu, Feb 18, 2016 at 7:56 PM, Ross Green <rgkernel@gmail.com> wrote:
> >>>> >> > Well a bonus extra!
> >>>> >> > Kept everything running and there was another stall.
> >>>> >> > So i have included the demsg output for perusal.
> >>>> >> >
> >>>> >> > Just to clear things up there is no hotplug involved in this system.
> >>>> >> > It is a standard Pandaboard ES Ti4460 two processor system.
> >>>> >> > I use this for testing as a generic armv7 processor, plus can keep it
> >>>> >> > just running along for testing for a long time. the system has a total
> >>>> >> > of 23-25 process running on average. Mainly standard daemons. There is
> >>>> >> > certainly no heavy processing going on. I run a series of benchmarks
> >>>> >> > that are cpu intensive for the first 20 miinutes after boot and then
> >>>> >> > just leave it idle away. checking every so often to see how it has
> >>>> >> > gone.
> >>>> >> > As mentioned I have observed these stalls going back to 3.17 kernel.
> >>>> >> > It will often take up to a week to record such a stall. I will
> >>>> >> > typically test every new release kernel, so the -rc? series will get
> >>>> >> > around a weeks testing.
> >>>> >>
> >>>> >> Sorry. Kind of hopping in a bit late here. Is this always happening
> >>>> >> with just the pandaboard? Or are you seeing this on different
> >>>> >> machines?
> >>>> >>
> >>>> >> Have you tried enabling CONFIG_DEBUG_TIMEKEEPING just in case
> >>>> >> something is going awry there?
> >>>> >
> >>>> > Excellent point -- timekeeping issues have caused this sort of issue
> >>>> > in the past.
> >>>> >
> >>>> > Ross, on your next test, could you please enable CONFIG_DEBUG_TIMEKEEPING
> >>>> > as John suggests?
> >>>> >
> >>>> >                                                         Thanx, Paul
> >>>> >
> >>>> As John has suggested have already enabled CONFIG_DEBUG_TIMEKEEPING.
> >>>>
> >>>> So far just on 1 day running.
> >>>>
> >>>> Sigh...!! Nothing to report as yet, only one day on the clock.
> >>>> Its like watching grass grow!
> >>>
> >>> I hear you!  Though I was thinking in terms of watching paint dry...
> >>>
> >>>                                                         Thanx, Paul
> >>>
> >> Yes,
> >>
> >> but with paint drying there is an end point!
> >> Grass just keeps on growing ...
> >>
> >> More like the children in the back of the car ...
> >> Are we there yet? ...
> >>
> >> Well still nothing .. to report. I have just built a 4.5-rc5, but will
> >> wait till I get some outcome from the previous test. That can't be too
> >> much longer!
> >>
> >> In hope,
> >>
> >> Ross Green
> > Patience little ones ...
> > 
> > Well after 2 days plus running pulled another stall.
> > This is with 4.5-rc4 and CONFIG_DEBUG_TIMEKEEPING set.
> > 
> > Can't see anything related to the TIMEKEEPING.
> > 
> > Anyway here is the dmesg output for people to look at.
> > 
> > Paul, I was going to move onto 4.5-rc5 kernel, is there something else
> > that you want me to test with that, Anyone else have any suggestions
> > or ideas?
> 
> Starting from kernel 3.17, if we request a e.g. 1000 jiffies schedule_timeout
> on a HZ=1000 kernel, is there an upper bound to the number of jiffies it
> can actually take before the timeout happens, especially on idle systems ?
> I remember a talk from Thomas Gleixner on the new timer wheel which could
> add some imprecision to those timeouts. Not sure in which kernel version it
> got in though.
> 
> My thinking is that it might be a good idea to try using hrtimers rather than
> a jiffies-based timeout to awaken the RCU thread if it's really important to
> run in a bounded amount of jiffies. Or else the jiffies-based sanity check
> that triggers the warning is perhaps too strict.

Some imprecision I could well understand.  21 seconds of imprecision
on a three-millisecond timeout I am having somewhat more difficulty
understanding.  ;-)

But I would rather avoid hrtimers for the RCU grace-period kthread
because a few milliseconds of adjustment for energy-efficiency
reasons is a very good thing.

Still working on getting decent traces...

							Thanx, Paul

  reply	other threads:[~2016-02-23 20:55 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-09 10:11 rcu_preempt self-detected stall on CPU from 4.5-rc3, since 3.17 Ross Green
2016-02-17  5:45 ` Paul E. McKenney
2016-02-17 19:28   ` Paul E. McKenney
2016-02-17 19:45     ` Peter Zijlstra
2016-02-17 20:28       ` Paul E. McKenney
2016-02-17 23:19         ` Paul E. McKenney
2016-02-18 11:51           ` Ross Green
2016-02-18 23:14             ` Mathieu Desnoyers
2016-02-19  3:56               ` Ross Green
2016-02-19  4:13                 ` John Stultz
2016-02-19 17:33                   ` Paul E. McKenney
2016-02-20  4:34                     ` Ross Green
2016-02-20  6:32                       ` Paul E. McKenney
2016-02-21  5:04                         ` Ross Green
2016-02-21 18:15                           ` Ross Green
2016-02-23 20:34                             ` Mathieu Desnoyers
2016-02-23 20:55                               ` Paul E. McKenney [this message]
2016-02-23 21:28                                 ` Ross Green
2016-02-25  5:13                                   ` Ross Green
2016-02-26  0:56                                     ` Paul E. McKenney
2016-02-26  1:35                                       ` Paul E. McKenney
2016-03-04  5:30                                         ` Ross Green
2016-03-04 15:18                                           ` Paul E. McKenney
2016-03-18 21:00                                       ` Josh Triplett
2016-03-18 23:56                                         ` Paul E. McKenney
2016-03-21 16:22                                           ` Jacob Pan
2016-03-21 17:26                                             ` Paul E. McKenney
2016-03-22 16:35                                               ` Chatre, Reinette
2016-03-22 17:40                                                 ` Paul E. McKenney
2016-03-22 21:04                                                   ` Chatre, Reinette
2016-03-22 21:19                                                     ` Paul E. McKenney
2016-03-23 17:15                                                       ` Chatre, Reinette
2016-03-23 18:20                                                         ` Paul E. McKenney
2016-03-23 18:25                                                           ` Chatre, Reinette
2016-03-23 19:50                                                             ` Paul E. McKenney
2016-03-25 21:24                                                           ` Chatre, Reinette
2016-03-25 21:46                                                             ` Paul E. McKenney
2016-03-26 12:29                                                               ` Mathieu Desnoyers
2016-03-26 15:28                                                                 ` Paul E. McKenney
2016-03-26 18:49                                                                   ` Paul E. McKenney
2016-03-26 22:22                                                                     ` Mathieu Desnoyers
2016-03-27  1:34                                                                       ` Paul E. McKenney
2016-03-27 13:48                                                                         ` Mathieu Desnoyers
2016-03-27 15:40                                                                           ` Paul E. McKenney
2016-03-27 20:00                                                                             ` Paul E. McKenney
2016-03-27 20:45                                                                             ` Peter Zijlstra
2016-03-27 21:06                                                                               ` Paul E. McKenney
2016-03-28  6:25                                                                                 ` Peter Zijlstra
2016-03-28 13:08                                                                                   ` Paul E. McKenney
2016-03-29  0:25                                                                                     ` Paul E. McKenney
2016-03-29  0:28                                                                                       ` Paul E. McKenney
2016-03-29 13:49                                                                                         ` Paul E. McKenney
2016-03-30 14:55                                                                                           ` Paul E. McKenney
2016-03-31 15:42                                                                                             ` Paul E. McKenney
2016-04-03  8:18                                                                                               ` Paul E. McKenney
2016-05-06  6:25                                                                                                 ` Ross Green
2016-05-07 15:25                                                                                                   ` Paul E. McKenney
2016-05-10  2:36                                                                                                     ` Ross Green
2016-06-30 17:52                                                                                                     ` Paul E. McKenney
2016-03-28  1:44                                                                               ` Mathieu Desnoyers
2016-03-28  2:23                                                                                 ` Mathieu Desnoyers
2016-03-28  6:13                                                                                   ` Peter Zijlstra
2016-03-28 13:50                                                                                     ` Paul E. McKenney
2016-03-28 14:15                                                                                     ` Mathieu Desnoyers
2016-03-27 20:53                                                                             ` Peter Zijlstra
2016-03-27 21:07                                                                               ` Paul E. McKenney
2016-03-27 20:54                                             ` Peter Zijlstra
2016-03-27 21:09                                               ` Paul E. McKenney
2016-03-28  6:28                                                 ` Peter Zijlstra
2016-03-28 13:29                                                   ` Paul E. McKenney
2016-03-28 15:07                                                     ` Mathieu Desnoyers
2016-03-28 15:56                                                       ` Paul E. McKenney
2016-03-28 16:12                                                         ` Mathieu Desnoyers
2016-03-28 16:29                                                           ` Paul E. McKenney
2016-03-30 12:58                                                     ` Boqun Feng
2016-03-30 13:30                                                       ` Paul E. McKenney
2016-03-30 14:15                                                         ` Boqun Feng
2016-02-19  4:22               ` Paul E. McKenney
2016-02-19  5:59                 ` Ross Green

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=20160223205522.GT3522@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=bobby.prani@gmail.com \
    --cc=dhowells@redhat.com \
    --cc=dipankar@in.ibm.com \
    --cc=dvhart@linux.intel.com \
    --cc=edumazet@google.com \
    --cc=fweisbec@gmail.com \
    --cc=jiangshanlai@gmail.com \
    --cc=john.stultz@linaro.org \
    --cc=josh@joshtriplett.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mingo@kernel.org \
    --cc=oleg@redhat.com \
    --cc=peterz@infradead.org \
    --cc=rgkernel@gmail.com \
    --cc=rostedt@goodmis.org \
    --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 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.