Re: [PATCH] rcu: Is it safe to enter an RCU read-side criticalsection?

From: Paul E. McKenney
Date: Wed Sep 11 2013 - 11:24:03 EST


On Wed, Sep 11, 2013 at 10:26:07AM -0400, Steven Rostedt wrote:
> On Wed, 11 Sep 2013 07:13:02 -0700
> "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx> wrote:
>
> > On Mon, Sep 09, 2013 at 03:34:26PM -0700, Paul E. McKenney wrote:
> > > On Mon, Sep 09, 2013 at 05:59:17PM -0400, Steven Rostedt wrote:
> > > > On Mon, 9 Sep 2013 17:40:26 -0400
> > > > Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:
> > > >
> > > > > Agreed. So how about rcu_is_online() ?
> > > >
> > > > Nope, what about all_your_base_are_belong_to_rcu()?
> > >
> > > Let's see if I can remember the candidates...
> > >
> > > rcu_is_cpu_idle() # reversed sense from the others
> > > rcu_is_ignored() # reversed sense from the others
> > > rcu_is_not_active() # reversed sense from the others
> > > rcu_is_watching_cpu()
> > > rcu_read_check()
> > > rcu_is_active()
> > > rcu_is_active_local()
> > > rcu_is_online()
> > > rcu_is_watching_task()
> > > rcu_is_watching_thread()
> > > rcu_is_watching_you()
> > > all_your_base_are_belong_to_rcu()
> > > rcu_is_active_loco()
> > > rcu_kilroy_was_here()
> > >
> > > Maybe I should just lock them all in a room overnight and see which
> > > are still alive in the morning.
> >
> > And after treating injuries, the survivor is rcu_is_watching().
> >
>
> But, but, but...
>
> That wasn't one of the contenders!
>
> What happened? Did rcu_is_watching_cpu(), rcu_is_watching_task(),
> rcu_is_watching_thread() and rcu_is_watching_you() all get together to
> gang up on the others, and then combined to be one?
>
> It's another Iraq! Several segments joined together by an outside
> force and they don't play well together. And like Iraq (and the US),
> hidden inside of this "community" is "rcu_is_watching_you"!

C'mon, Steven! I did say "after treating injuries"! In the opinion
of the surgeon, the only option was to ampute what was left of either
the _cpu(), _task(), _thread(), or _you(). Heck, the damage was so
severe that we couldn't even tell which one it was!

Thanx, Paul

--
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/