Netdev List
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: nikolay@cumulusnetworks.com
Cc: netdev@vger.kernel.org, yoshfuji@linux-ipv6.org,
	dvyukov@google.com, kcc@google.com, syzkaller@googlegroups.com,
	edumazet@google.com, roopa@cumulusnetworks.com,
	torvalds@linux-foundation.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net] ip6mr: fix notification device destruction
Date: Fri, 21 Apr 2017 15:58:32 -0400 (EDT)	[thread overview]
Message-ID: <20170421.155832.1918930167010626426.davem@davemloft.net> (raw)
In-Reply-To: <1e536c10-3bbb-f39b-d5dc-c397c121dce0@cumulusnetworks.com>

From: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Date: Fri, 21 Apr 2017 22:56:26 +0300

> On 21/04/17 22:50, Nikolay Aleksandrov wrote:
>> On 21/04/17 22:36, David Miller wrote:
>>> From: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
>>> Date: Fri, 21 Apr 2017 21:30:42 +0300
>>>
>>>> On 21/04/17 20:42, Nikolay Aleksandrov wrote:
>>>>> Andrey Konovalov reported a BUG caused by the ip6mr code which is caused
>>>>> because we call unregister_netdevice_many for a device that is already
>>>>> being destroyed. In IPv4's ipmr that has been resolved by two commits
>>>>> long time ago by introducing the "notify" parameter to the delete
>>>>> function and avoiding the unregister when called from a notifier, so
>>>>> let's do the same for ip6mr.
>>>  ...
>>>> +CC LKML and Linus
>>>
>>> Applied, thanks Nikolay and thanks Andrey for the report and testing.
>>>
>>> Nikolay, how far does this bug go back?
>>>
>> 
>> Good question, AFAICS since ip6mr exists because it was copied from ipmr:
>> commit 7bc570c8b4f7
>> Author: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
>> Date:   Thu Apr 3 09:22:53 2008 +0900
>> 
>>     [IPV6] MROUTE: Support multicast forwarding.
>> 
>> 
> 
> Oops no, my bad. That wouldn't cause it to BUG because it was already removed by mif6_delete
> earlier. So since it can be destroyed by a netns exiting, currently I don't see any other
> way which is outside of ip6mr for destroying that device.
> 
> That should be:
> commit 8229efdaef1e
> Author: Benjamin Thery <benjamin.thery@bull.net>
> Date:   Wed Dec 10 16:30:15 2008 -0800
> 
>     netns: ip6mr: enable namespace support in ipv6 multicast forwarding code
> 
> 
> Which allowed the notifier to be executed for pimreg devices in other network namespaces.

That still makes it -stable material as far as I'm concerned.

Thanks again! :)

      reply	other threads:[~2017-04-21 19:58 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-21 12:48 net/core: BUG in unregister_netdevice_many Andrey Konovalov
2017-04-21 17:25 ` Linus Torvalds
2017-04-21 17:42   ` Linus Torvalds
2017-04-21 18:30     ` Nikolay Aleksandrov
2017-04-21 19:37     ` David Miller
2017-04-21 18:55   ` Cong Wang
2017-04-21 19:38     ` David Miller
2017-04-21 17:42 ` [PATCH net] ip6mr: fix notification device destruction Nikolay Aleksandrov
2017-04-21 18:30   ` Nikolay Aleksandrov
2017-04-21 18:46     ` Andrey Konovalov
2017-04-21 19:36     ` David Miller
2017-04-21 19:50       ` Nikolay Aleksandrov
2017-04-21 19:55         ` David Miller
2017-04-21 19:56         ` Nikolay Aleksandrov
2017-04-21 19:58           ` David Miller [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170421.155832.1918930167010626426.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=dvyukov@google.com \
    --cc=edumazet@google.com \
    --cc=kcc@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@cumulusnetworks.com \
    --cc=roopa@cumulusnetworks.com \
    --cc=syzkaller@googlegroups.com \
    --cc=torvalds@linux-foundation.org \
    --cc=yoshfuji@linux-ipv6.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox