On 2/26/18 12:08 PM, David Miller wrote: > From: David Ahern <dsah...@gmail.com> > Date: Sun, 25 Feb 2018 11:47:12 -0800 > >> A later patch removes rt6i_table from rt6_info. Save the ipv6 >> table for a VRF in net_vrf. fib tables can not be deleted so >> no reference counting or locking is required. >> >> Signed-off-by: David Ahern <dsah...@gmail.com> > > Is this change really OK all by itself?
should. When you look at references to rt6i_table the only one for the data path is changing sernum when inserting an exception. Exceptions are not relevant for this special VRF dst as it is used for an internal redirection before packets leave the box. > > Sure, you fix up the vrf code operating on such 'rt6' objects to > not dereference the ->rt6i_table. > > But any other code whatsoever that looks at this rt6 object (dumping, > other operations in the ipv6 stack data or control plane, etc.) can > legitimately expect always to see a non-NULL value here. > > I really don't see how this can be OK and leave your patch series > properly bisectable. > But if you want me to be extra cautious I can leave the rt6i_table setting and remove it in patch 20 (remove unneeded rt6_info elements).