From: David Ahern <d...@cumulusnetworks.com> Date: Wed, 4 May 2016 21:18:07 -0700
> @@ -372,9 +372,13 @@ static int vrf_rt6_create(struct net_device *dev) > if (!rt6) > goto out; > > - rt6->dst.output = vrf_output6; > - rt6->rt6i_table = fib6_get_table(net, vrf->tb_id); > dst_hold(&rt6->dst); > + > + rt6->rt6i_table = fib6_new_table(net, vrf->tb_id); > + if (!rt6->rt6i_table) > + goto out; > + > + rt6->dst.output = vrf_output6; > vrf->rt6 = rt6; > rc = 0; > out: This leaks rt6.