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

From: Paul E. McKenney
Date: Sat Feb 28 2015 - 18:32:15 EST


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

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