All of lore.kernel.org
 help / color / mirror / Atom feed
From: paulmck@linux.vnet.ibm.com (Paul E. McKenney)
To: linux-arm-kernel@lists.infradead.org
Subject: mx6: suspicious RCU usage
Date: Tue, 14 Jul 2015 14:31:03 -0700	[thread overview]
Message-ID: <20150714213103.GV3717@linux.vnet.ibm.com> (raw)
In-Reply-To: <20150714204909.GX7557@n2100.arm.linux.org.uk>

On Tue, Jul 14, 2015 at 09:49:09PM +0100, Russell King - ARM Linux wrote:
> On Tue, Jul 14, 2015 at 09:26:00AM -0700, Paul E. McKenney wrote:
> > On Tue, Jul 14, 2015 at 01:06:32PM -0300, Fabio Estevam wrote:
> > > Hi Paul,
> > > 
> > > On Tue, Jul 14, 2015 at 1:00 PM, Paul E. McKenney
> > > <paulmck@linux.vnet.ibm.com> wrote:
> > > 
> > > > Does this patch help?
> > > >
> > > >         https://lkml.org/lkml/2015/5/12/885
> > > 
> > > I am using an ARM 32-bit machine, so I used this one instead:
> > > https://lkml.org/lkml/2015/5/12/892
> > > 
> > > , and it fixes the problem. Thanks!
> > > 
> > > Feel free to add:
> > > 
> > > Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
> > 
> > Glad it helped!
> > 
> > Russell, did you want me to push this, or would you rather take it?
> 
> If it's the one I'm thinking of (using the generic code) because it
> doesn't actually solve the problem we have.  It may shut up the RCU
> warning, but it doesn't solve the underlying problem - one which is
> caused by the use of atomics (which use the exclusive instructions)
> vs cache line migration between CPUs vs speculative prefetching...
> 
> It's possible right now that _dirty_ cache lines can be migrated to
> the dying CPU, which are then lost on power down - and if we disable
> the caches on the dying CPU, we then can't use exclusives, so atomics
> (and all of the other normal kernel synchronisation mechanisms) are
> out of the question.

OK, that could explain any number of failures.

I will leave this issue in your hands, then.

							Thanx, Paul

WARNING: multiple messages have this Message-ID (diff)
From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: Fabio Estevam <festevam@gmail.com>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	Peter Zijlstra <peterz@infradead.org>,
	rostedt@goodmis.org, linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: mx6: suspicious RCU usage
Date: Tue, 14 Jul 2015 14:31:03 -0700	[thread overview]
Message-ID: <20150714213103.GV3717@linux.vnet.ibm.com> (raw)
In-Reply-To: <20150714204909.GX7557@n2100.arm.linux.org.uk>

On Tue, Jul 14, 2015 at 09:49:09PM +0100, Russell King - ARM Linux wrote:
> On Tue, Jul 14, 2015 at 09:26:00AM -0700, Paul E. McKenney wrote:
> > On Tue, Jul 14, 2015 at 01:06:32PM -0300, Fabio Estevam wrote:
> > > Hi Paul,
> > > 
> > > On Tue, Jul 14, 2015 at 1:00 PM, Paul E. McKenney
> > > <paulmck@linux.vnet.ibm.com> wrote:
> > > 
> > > > Does this patch help?
> > > >
> > > >         https://lkml.org/lkml/2015/5/12/885
> > > 
> > > I am using an ARM 32-bit machine, so I used this one instead:
> > > https://lkml.org/lkml/2015/5/12/892
> > > 
> > > , and it fixes the problem. Thanks!
> > > 
> > > Feel free to add:
> > > 
> > > Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
> > 
> > Glad it helped!
> > 
> > Russell, did you want me to push this, or would you rather take it?
> 
> If it's the one I'm thinking of (using the generic code) because it
> doesn't actually solve the problem we have.  It may shut up the RCU
> warning, but it doesn't solve the underlying problem - one which is
> caused by the use of atomics (which use the exclusive instructions)
> vs cache line migration between CPUs vs speculative prefetching...
> 
> It's possible right now that _dirty_ cache lines can be migrated to
> the dying CPU, which are then lost on power down - and if we disable
> the caches on the dying CPU, we then can't use exclusives, so atomics
> (and all of the other normal kernel synchronisation mechanisms) are
> out of the question.

OK, that could explain any number of failures.

I will leave this issue in your hands, then.

							Thanx, Paul


  reply	other threads:[~2015-07-14 21:31 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-14 15:54 mx6: suspicious RCU usage Fabio Estevam
2015-07-14 15:54 ` Fabio Estevam
2015-07-14 16:00 ` Paul E. McKenney
2015-07-14 16:00   ` Paul E. McKenney
2015-07-14 16:06   ` Fabio Estevam
2015-07-14 16:06     ` Fabio Estevam
2015-07-14 16:26     ` Paul E. McKenney
2015-07-14 16:26       ` Paul E. McKenney
2015-07-14 16:44       ` Fabio Estevam
2015-07-14 16:44         ` Fabio Estevam
2015-07-14 16:54         ` Paul E. McKenney
2015-07-14 16:54           ` Paul E. McKenney
2015-07-14 16:59         ` Fabio Estevam
2015-07-14 16:59           ` Fabio Estevam
2015-07-14 19:26           ` Paul E. McKenney
2015-07-14 19:26             ` Paul E. McKenney
2015-07-14 20:49       ` Russell King - ARM Linux
2015-07-14 20:49         ` Russell King - ARM Linux
2015-07-14 21:31         ` Paul E. McKenney [this message]
2015-07-14 21:31           ` Paul E. McKenney
2015-07-14 16:08   ` Paul E. McKenney
2015-07-14 16:08     ` 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=20150714213103.GV3717@linux.vnet.ibm.com \
    --to=paulmck@linux.vnet.ibm.com \
    --cc=linux-arm-kernel@lists.infradead.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 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.