Re: [PATCH v3 tip/core/rcu 3/9] rcu: Add synchronous grace-period waiting for RCU-tasks

From: Peter Zijlstra
Date: Thu Aug 07 2014 - 14:47:09 EST


On Thu, Aug 07, 2014 at 07:27:53PM +0200, Peter Zijlstra wrote:
> Right, Steve (and Paul) please explain _why_ this is an 'RCU' at all?
> _Why_ do we have call_rcu_task(), and why is it entwined in the 'normal'
> RCU stuff? We've got SRCU -- which btw started out simple, without
> call_srcu() -- and that lives entirely independent. And SRCU is far more
> an actual RCU than this thing is, its got read side primitives and
> everything.
>
> Also, I cannot think of any other use besides trampolines for this
> thing, but that might be my limited imagination.

Also, trampolines can end up in the return frames, right? So how can you
be sure when to wipe them? Passing through schedule() isn't enough for
that.

Userspace is, but kernel threads typically don't ever end up there.

Attachment: pgp_ANVYMe03X.pgp
Description: PGP signature