On 5/4/16 10:24 PM, David Miller wrote:
From: David Ahern
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_tab
From: David Ahern
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-
Tables have to exist for VRFs to function. Ensure they exist
when VRF device is created.
Signed-off-by: David Ahern
---
drivers/net/vrf.c | 11 +--
net/ipv4/fib_frontend.c | 1 +
net/ipv6/ip6_fib.c | 1 +
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/driver