The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@kernel.org>
To: Qais Yousef <qais.yousef@arm.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>,
	Josh Triplett <josh@joshtriplett.org>,
	linux-kernel@vger.kernel.org
Subject: Re: Hit WARN_ON() in rcutorture.c:1055
Date: Mon, 23 Mar 2020 10:17:51 -0700	[thread overview]
Message-ID: <20200323171751.GL3199@paulmck-ThinkPad-P72> (raw)
In-Reply-To: <20200323170609.w64xrfahd2snfz6h@e107158-lin.cambridge.arm.com>

On Mon, Mar 23, 2020 at 05:06:10PM +0000, Qais Yousef wrote:
> On 03/23/20 08:57, Paul E. McKenney wrote:
> > On Mon, Mar 23, 2020 at 03:43:09PM +0000, Qais Yousef wrote:
> > > Hi
> > > 
> > > I hit the following warning while running rcutorture tests. It only happens
> > > when I try to hibernate the system (arm64 Juno-r2).
> > 
> > Hibernating the system during rcutorture tests.  Now that is gutsy!  ;-)
> 
> Hehe was just a side effect of testing the cpu hotplug stuff :-)
> 
> > 
> > > Let me know if you need additional info.
> > 
> > 1.	Do you need this to work?  If so, please tell me your use case.
> 
> Nope. It just happened while trying to stress the cpu hotplug series I just
> posted.
> 
> > 2.	What is line 1055 of your rcutorture.c?  Here is my guess:
> 
> It's 5.6-rc6, sorry should have mentioned in the report.
> 
> 		/* Cycle through nesting levels of rcu_expedite_gp() calls. */
> 		if (can_expedite &&
> 		    !(torture_random(&rand) & 0xff & (!!expediting - 1))) {
> 			WARN_ON_ONCE(expediting == 0 && rcu_gp_is_expedited());
> 			if (expediting >= 0)
> 				rcu_expedite_gp();
> 			else
> 				rcu_unexpedite_gp();
> 			if (++expediting > 3)
> 				expediting = -expediting;
> 		} else if (!can_expedite) { /* Disabled during boot, recheck. */
> 
> If it's something you don't care about, then I don't care about too. I just
> thought I'd report it in case it uncovered something worthwhile.

Well, my guess was wrong.  ;-)

This is instead rcutorture being surprised by the fact that RCU grace
periods are expedited during the hibernate process.  I could fix this
particular situation, but I bet that there are a number of others,
including my guess above.

One approach would be to halt rcutorture testing just before hibernating
and restart it just after resuming.

Thoughts?

							Thanx, Paul

  reply	other threads:[~2020-03-23 17:17 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-23 15:43 Hit WARN_ON() in rcutorture.c:1055 Qais Yousef
2020-03-23 15:57 ` Paul E. McKenney
2020-03-23 17:06   ` Qais Yousef
2020-03-23 17:17     ` Paul E. McKenney [this message]
2020-03-23 17:41       ` Qais Yousef
2020-03-23 18:10         ` Paul E. McKenney
2020-03-23 18:23           ` Qais Yousef
2020-03-23 18:44             ` Paul E. McKenney
2020-03-24 11:39               ` Qais Yousef
2020-03-24 13:00                 ` 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=20200323171751.GL3199@paulmck-ThinkPad-P72 \
    --to=paulmck@kernel.org \
    --cc=dave@stgolabs.net \
    --cc=josh@joshtriplett.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=qais.yousef@arm.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