On Tue, Nov 3, 2015 at 7:09 PM, Sabrina Dubroca <s...@queasysnail.net> wrote:
> In ipv6_add_dev, when addrconf_sysctl_register fails, we do not clean up
> the dev_snmp6 entry that we have already registered for this device.
>
> It is safe to call snmp6_unregister_dev unconditionally from
> in6_dev_finish_destroy, so do it.
>
> Reported-by: Dmitry Vyukov <dvyu...@google.com>
> Acked-by: Hannes Frederic Sowa <han...@stressinduktion.org>
> Signed-off-by: Sabrina Dubroca <s...@queasysnail.net>
> ---
> Dmitry, I'm not completely sure it's the issue you're triggering, but
> it sems likely.

Dunno.
I would prefer somebody more knowledgeable look at this.
So far I seen failures to "lo" and "sit0" devices. But I would not be
surprised if it can happen for other devices as well.


>  net/ipv6/addrconf_core.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/net/ipv6/addrconf_core.c b/net/ipv6/addrconf_core.c
> index bfa941fc1165..96248a333197 100644
> --- a/net/ipv6/addrconf_core.c
> +++ b/net/ipv6/addrconf_core.c
> @@ -168,6 +168,8 @@ void in6_dev_finish_destroy(struct inet6_dev *idev)
>                 pr_warn("Freeing alive inet6 device %p\n", idev);
>                 return;
>         }
> +
> +       snmp6_unregister_dev(idev);
>         call_rcu(&idev->rcu, in6_dev_finish_destroy_rcu);
>  }
>  EXPORT_SYMBOL(in6_dev_finish_destroy);
> --
> 2.6.2
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to