]> git.baikalelectronics.ru Git - kernel.git/commit
ipv6: fix double refcount of fib6_metrics
authorCong Wang <xiyou.wangcong@gmail.com>
Fri, 3 Aug 2018 06:20:38 +0000 (23:20 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 6 Aug 2018 00:22:45 +0000 (17:22 -0700)
commit4de5192d6782ba2ec36a8a945ca29a0ecc6b555b
tree5789fc559dc1882181c7e70a74406247cc945f7d
parentdf71e18b75088bde12f4c3d5e5841e11a140d1f9
ipv6: fix double refcount of fib6_metrics

All the callers of ip6_rt_copy_init()/rt6_set_from() hold refcnt
of the "from" fib6_info, so there is no need to hold fib6_metrics
refcnt again, because fib6_metrics refcnt is only released when
fib6_info is gone, that is, they have the same life time, so the
whole fib6_metrics refcnt can be removed actually.

This fixes a kmemleak warning reported by Sabrina.

Fixes: 87bd20a7a731 ("net/ipv6: separate handling of FIB entries from dst based routes")
Reported-by: Sabrina Dubroca <sd@queasysnail.net>
Cc: Sabrina Dubroca <sd@queasysnail.net>
Cc: David Ahern <dsahern@gmail.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/route.c