4.18-stable review patch. If anyone has any objections, please let me know. ------------------ From: David Ahern <dsahern@xxxxxxxxx> [ 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 <dsahern@xxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- net/ipv6/route.c | 5 ----- 1 file changed, 5 deletions(-) --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -4314,11 +4314,6 @@ static int ip6_route_info_append(struct 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);