From: Wei Wang <[email protected]> Date: Mon, 21 Aug 2017 09:47:10 -0700
> From: Wei Wang <[email protected]> > > We currently keep rt->rt6i_node pointing to the fib6_node for the route. > And some functions make use of this pointer to dereference the fib6_node > from rt structure, e.g. rt6_check(). However, as there is neither > refcount nor rcu taken when dereferencing rt->rt6i_node, it could > potentially cause crashes as rt->rt6i_node could be set to NULL by other > CPUs when doing a route deletion. > This patch introduces an rcu grace period before freeing fib6_node and > makes sure the functions that dereference it takes rcu_read_lock(). > > Note: there is no "Fixes" tag because this bug was there in a very > early stage. > > Signed-off-by: Wei Wang <[email protected]> > Acked-by: Eric Dumazet <[email protected]> > Acked-by: Martin KaFai Lau <[email protected]> Applied and queued up for -stable, thanks.
