On 5/4/16 10:24 PM, David Miller wrote:
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.


Indeed. That fact was lost by follow on patches which fix the ordering.

Reply via email to