Re: [RFC][PATCH] module: Optimize __module_address() using a latched RB-tree

Paul E. McKenney
2015-02-28T23:32:12Z

On Sat, Feb 28, 2015 at 05:56:54PM +0100, Peter Zijlstra wrote:
> On Sat, Feb 28, 2015 at 05:41:12PM +0100, Peter Zijlstra wrote:
> > > > > + rb_link_node(&mn->node, parent, link);
> > > >
> > > > This makes the new module visible to readers, if I understand correctly.
> > >
> > > You do.
> >
> > I think I have reconsidered; this does not in fact make it visible.
>
> Ah; never mind, it is. An iterator could have started in data[0], gone
> on holiday while the modification took place, and resumed once it is
> done and magically see the element appear.
>
> Therefore we do indeed need the atomic publishing and I think this also
> settles my question about Alpha.

Whew!

Though otherwise whatever you were doing would have been pretty cool
and fun to learn about. ;-)

Thanx, Paul