From: David Ahern Date: Thu, 27 Sep 2018 00:35:14 +0000 (-0700) Subject: net/ipv6: Remove extra call to ip6_convert_metrics for multipath case X-Git-Tag: v4.18.15~79 X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3827b9bc3ba2bcfe5eef2fa2d440d7e1734f362;p=linux net/ipv6: Remove extra call to ip6_convert_metrics for multipath case [ Upstream commit 36f19d5b4f99fa9fa8263877e5f8e669d7fddc14 ] The change to move metrics from the dst to rt6_info moved the call to ip6_convert_metrics from ip6_route_add to ip6_route_info_create. In doing so it makes the call in ip6_route_info_append redundant and actually leaks the metrics installed as part of the ip6_route_info_create. Remove the now unnecessary call. Fixes: d4ead6b34b67f ("net/ipv6: move metrics from dst to rt6_info") Signed-off-by: David Ahern Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 480a79f47c52..ed526e257da6 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -4314,11 +4314,6 @@ static int ip6_route_info_append(struct net *net, if (!nh) return -ENOMEM; nh->fib6_info = rt; - err = ip6_convert_metrics(net, rt, r_cfg); - if (err) { - kfree(nh); - return err; - } memcpy(&nh->r_cfg, r_cfg, sizeof(*r_cfg)); list_add_tail(&nh->next, rt6_nh_list);