Eric Dumazet 21efcfa0ff ipv6: unshare inetpeers
We currently cow metrics a bit too soon in IPv6 case : All routes are
tied to a single inetpeer entry.

Change ip6_rt_copy() to get destination address as second argument, so
that we fill rt6i_dst before the dst_copy_metrics() call.

icmp6_dst_alloc() must set rt6i_dst before calling dst_metric_set(), or
else the cow is done while rt6i_dst is still NULL.

If orig route points to readonly metrics, we can share the pointer
instead of performing the memory allocation and copy.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-07-21 21:24:25 -07:00
..
2010-09-23 14:33:39 -07:00
2011-04-22 11:04:14 -07:00
2010-05-11 14:40:55 +02:00
2011-04-22 11:04:14 -07:00
2011-05-19 16:21:22 -04:00
2011-07-01 16:11:16 -07:00
2011-07-21 21:24:25 -07:00
2010-10-25 13:09:45 -07:00