linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@kernel.org>
To: Liam Howlett <liam.howlett@oracle.com>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: Re: RCU tests for Maple Tree
Date: Mon, 17 May 2021 09:50:04 -0700	[thread overview]
Message-ID: <20210517165004.GI4441@paulmck-ThinkPad-P17-Gen-1> (raw)
In-Reply-To: <20210517163048.7zcg2435lsvg25ef@revolver>

On Mon, May 17, 2021 at 04:30:53PM +0000, Liam Howlett wrote:
> * Paul E. McKenney <paulmck@kernel.org> [210517 11:40]:
> > Hello, Liam!
> > 
> > Apologies for my being so slow here, but just wanted to double-check my
> > understanding of this code.
> > 
> > There appear to be two tests that execute from run_check_rcu():
> > 
> > o	rcu_loop().  This appears to have RCU readers scanning the tree
> > 	while an updater is adding a single range.  (Or replacing it,
> > 	as the case might be.)
> > 
> > o	rcu_val().  This appears to have RCU readers repeatedly reading a
> > 	given value while an updater is adding/replacing a single range.
> > 	The test complains if no one sees the new value.
> > 
> > These tests appear to be the only use of threads, though perhaps the
> > test harness has some way of creating threads that I missed.
> > 
> > Are there other tests that I should be looking for?
> 
> No, those are the only ones I'm running with threads right now.  I think
> all RCU tests are run from check_rcu() iirc.  This did yield results of
> failures that had to be addressed so I'm somewhat confident that it's
> actually working.

OK, I guess I can feel relieved that I can still read code.  ;-)

> >From your wording I'm gathering I need to increase this by a lot more
> test cases?

I would feel better with the addition of something that looked more
like a stress test.  For but one example, is there some combination
of several successive update operations that can mess up slow readers
(that is, readers that are interrupted or preempted, and thus have
multiple updates happen while they are traversing the tree)?  If so,
the current tests will not find it.

							Thanx, Paul


  reply	other threads:[~2021-05-17 16:50 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-17 15:40 Paul E. McKenney
2021-05-17 16:30 ` Liam Howlett
2021-05-17 16:50   ` Paul E. McKenney [this message]
2021-05-17 16:53     ` 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=20210517165004.GI4441@paulmck-ThinkPad-P17-Gen-1 \
    --to=paulmck@kernel.org \
    --cc=liam.howlett@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.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