aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/route.c
diff options
context:
space:
mode:
authorDaniel Lezcano <dlezcano@fr.ibm.com>2008-03-04 02:31:11 -0500
committerDavid S. Miller <davem@davemloft.net>2008-03-04 02:31:11 -0500
commit63152fc0de4dfe83da543bf133cef73d885a50fc (patch)
tree2b6546f2ebd5b3fa6d48bfd7ca4085d0f96e771f /net/ipv6/route.c
parent450d19f8ab35fad4ef2b129cb383a5b8d1326611 (diff)
[NETNS][IPV6] ip6_fib - gc timer per namespace
Move the timer initialization at the network namespace creation and store the network namespace in the timer argument. That enables multiple timers (one per network namespace) to do garbage collecting. Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com> Signed-off-by: Benjamin Thery <benjamin.thery@bull.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/route.c')
-rw-r--r--net/ipv6/route.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index fd44721abebb..b13eb0111270 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -952,7 +952,7 @@ struct dst_entry *icmp6_dst_alloc(struct net_device *dev,
952 icmp6_dst_gc_list = &rt->u.dst; 952 icmp6_dst_gc_list = &rt->u.dst;
953 spin_unlock_bh(&icmp6_dst_lock); 953 spin_unlock_bh(&icmp6_dst_lock);
954 954
955 fib6_force_start_gc(); 955 fib6_force_start_gc(dev->nd_net);
956 956
957out: 957out:
958 return &rt->u.dst; 958 return &rt->u.dst;
@@ -1230,6 +1230,9 @@ install_route:
1230 rt->u.dst.dev = dev; 1230 rt->u.dst.dev = dev;
1231 rt->rt6i_idev = idev; 1231 rt->rt6i_idev = idev;
1232 rt->rt6i_table = table; 1232 rt->rt6i_table = table;
1233
1234 cfg->fc_nlinfo.nl_net = dev->nd_net;
1235
1233 return __ip6_ins_rt(rt, &cfg->fc_nlinfo); 1236 return __ip6_ins_rt(rt, &cfg->fc_nlinfo);
1234 1237
1235out: 1238out: