diff options
author | David Ahern <dsahern@gmail.com> | 2018-08-20 13:02:41 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-09-15 09:46:43 +0200 |
commit | 2ff8354c2317b8c50f5565230e3ca842c4aebb6c (patch) | |
tree | 96ecc8424c78baa6ba7272519255853d81caa6b1 /net | |
parent | b24b39afa4112eb4ecb236bc20785fa507c94888 (diff) |
net/ipv6: Put lwtstate when destroying fib6_info
[ Upstream commit 80f1a0f4e0cd4bfc8a74fc1c39843a6e7b206b95 ]
Prior to the introduction of fib6_info lwtstate was managed by the dst
code. With fib6_info releasing lwtstate needs to be done when the struct
is freed.
Fixes: 93531c674315 ("net/ipv6: separate handling of FIB entries from dst based routes")
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/ip6_fib.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c index f43d278e0040..5516f55e214b 100644 --- a/net/ipv6/ip6_fib.c +++ b/net/ipv6/ip6_fib.c @@ -198,6 +198,8 @@ void fib6_info_destroy_rcu(struct rcu_head *head) } } + lwtstate_put(f6i->fib6_nh.nh_lwtstate); + if (f6i->fib6_nh.nh_dev) dev_put(f6i->fib6_nh.nh_dev); |