Re: [PATCH RFC 1/2] netfilter: conntrack: remove RCU usage in conntrack notifier

Benjamin Poirier
2012-04-27T20:15:04Z

On 2012/04/27 20:58, Eric Dumazet wrote:
> On Fri, 2012-04-27 at 14:28 -0400, Benjamin Poirier wrote:
> > I think that the rcu usage in this code is pointless. It should either be
> > removed or, if it was intended to protect against something, it ought to make
> > that clear.
> >
> > 1) The code does not make use of the deferred deletion/wait for completion rcu
> > api (ie. synchronize_rcu(), call_rcu()).
> > 2) It does not benefit from the barriers implied by the rcu primitives used.
> > The code deals with callback pointers. There's no need to order writes to the
> > function code (!) before writes to the function pointers here.
> > ---
>
> At a first glance, this seems pretty wrong.
>
> code can disappear under you, thats for sure.
>
> CONFIG_NF_CT_NETLINK=m
>
> hint : module unload contains an rcu barrier.
>

Thank you Eric. I had indeed failed to consider module load/unload
cases, which are effectively "writes to function code".