Re: [PATCH 2/3] rcu: Create rcu_sync infrastructure

From: Oleg Nesterov
Date: Fri Oct 04 2013 - 15:14:08 EST


On 10/04, Peter Zijlstra wrote:
>
> On Fri, Oct 04, 2013 at 05:13:23PM +0200, Oleg Nesterov wrote:
>
> > I am not trying saying this feature is "must have", of course it
> > is not. The only problem, I am a bit puzzled why you dislike it
> > that much.
>
> The reason I dislike it is because I feel we're now mixing two objects
> into one; one object doing mutual exclusion and one object being
> terribly smart with sync_rcu.

OK, I see your point.

But rcu_sync_struct has to serialize the writers anyway. The only
question is how many other writers the thread doing ->sync() should
wakeup and when.

And otoh. Currently nobody needs the non-exclusive mode (cpu-hotplug
doesn't care because it is always exclusive itself). And in fact you
initially argued with wake_up_all ;) "exclusive" is more natural, it
is like rw_semaphore.

However, yes-yes-yes, I do think that we need the non-exclusive mode
too, at least for percpu_down_write_nonexclusive() which I think we
need as well.

Oleg.

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