From: Cong Wang <cw...@twopensource.com>
Date: Tue, 3 Nov 2015 10:30:20 -0800

> On Tue, Nov 3, 2015 at 10:09 AM, 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.
>>
>>  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);
> 
> 
> Hmm, but looks like we can't call a function from ipv6 module in a core file?

Grrr, that's right, I have to revert this.

Good catch Cong.
--
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