lkml.org 
[lkml]   [2010]   [Aug]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH tip/core/rcu 08/10] rcu: Add a TINY_PREEMPT_RCU
* Steven Rostedt (rostedt@goodmis.org) wrote:
> On Tue, 2010-08-17 at 12:04 -0400, Steven Rostedt wrote:
>
> > > Then we could go for the simpler:
> > >
> > > --t->rcu_read_lock_nesting;
> > > barrier();
> > > if (t->rcu_read_lock_nesting == 0 &&
> > > unlikely((t->rcu_read_unlock_special))
> >
> > Yeah, that's what I meant, I was too lazy to remove the ACCESS_ONCE()
> > from the cut and paste I did.
> >
> > >
> > > Which puts a constraint across all memory accesses. I'd be fine with
> > > that if you are afraid of too much micro-optimization (e.g. my
> > > barrier2(a, b) proposal).
> >
> > Not afraid, but just too much code for a simple solution.
>
> IOW,
>
> I think just pulling out the '--' and adding the barrier() is the proper
> solution here. Compiler barriers are rather cheap.
>
> Can we all agree on this solution?

Given that we already have a barrier() at the beginning of
rcu_read_unlock(), adding a second one will not have much more global
optimisation impact than what is already there. I'm personally fine with
this solution. Let's see what others have to say about this.

Thanks,

Mathieu


--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com


\
 
 \ /
  Last update: 2010-08-17 18:33    [W:1.372 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site