Re: [PATCH tip/core/rcu 08/10] rcu: Add a TINY_PREEMPT_RCU

From: Steven Rostedt
Date: Tue Aug 17 2010 - 12:05:00 EST


On Tue, 2010-08-17 at 11:55 -0400, Mathieu Desnoyers wrote:

> > Heck, this is too much micro optimization. We could just be safe and do
> > the:
> > --t->rcu_read_lock_nesting;
> > barrier();
> > if (ACCESS_ONCE(t->rcu_read_lock_nesting) == 0 &&
> > unlikely((ACCESS_ONCE(t->rcu_read_unlock_special)))
> >
> > And be done with it.
>
> 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.

-- Steve


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/