From: Julien Grall <julien.grall@citrix.com>
To: Florian Westphal <fw@strlen.de>
Cc: <stephen@networkplumber.org>, <davem@davemloft.net>,
<bridge@lists.linux-foundation.org>, <netdev@vger.kernel.org>,
<xen-devel@lists.xenproject.org>, <linux-kernel@vger.kernel.org>,
"Bernhard Thaler" <bernhard.thaler@wvnet.at>,
Pablo Neira Ayuso <pablo@netfilter.org>,
<ian.campbell@citrix.com>, <wei.liu2@citrix.com>
Subject: Re: [PATCH] net/bridge: Add missing in6_dev_put in br_validate_ipv6
Date: Mon, 6 Jul 2015 11:35:55 +0100 [thread overview]
Message-ID: <559A5A0B.4040700@citrix.com> (raw)
In-Reply-To: <20150703204213.GM16529@breakpoint.cc>
Hi,
On 03/07/15 21:42, Florian Westphal wrote:
> Julien Grall <julien.grall@citrix.com> wrote:
>> The commit efb6de9b4ba0092b2c55f6a52d16294a8a698edd "netfilter: bridge:
>> forward IPv6 fragmented packets" introduced a new function
>> br_validate_ipv6 which take a reference on the inet6 device. Although,
>> the reference is not released at the end.
>>
>> This will result to the impossibility to destroy any netdevice using
>> ipv6 and bridge.
>>
>> Spotted while trying to destroy a Xen guest on the upstream Linux:
>> "unregister_netdevice: waiting for vif1.0 to become free. Usage count = 1"
>
> Ugh :-/
>
> I think it makes more sense to use __in6_dev_get() instead which doesn't
> take a reference.
__in6_dev_get requires to hold rcu_read_lock or RTNL. My knowledge on
this code is very limited. Are we sure that one this lock is hold? At
first glance, I wasn't able to find one.
Regards,
--
Julien Grall
next prev parent reply other threads:[~2015-07-06 10:35 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-03 18:01 [PATCH] net/bridge: Add missing in6_dev_put in br_validate_ipv6 Julien Grall
2015-07-03 20:42 ` Florian Westphal
2015-07-06 10:35 ` Julien Grall [this message]
2015-07-06 11:16 ` Eric Dumazet
2015-07-06 11:19 ` Florian Westphal
2015-07-06 11:32 ` [Xen-devel] " Julien Grall
2015-07-06 9:58 ` Bob Liu
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=559A5A0B.4040700@citrix.com \
--to=julien.grall@citrix.com \
--cc=bernhard.thaler@wvnet.at \
--cc=bridge@lists.linux-foundation.org \
--cc=davem@davemloft.net \
--cc=fw@strlen.de \
--cc=ian.campbell@citrix.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=stephen@networkplumber.org \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xenproject.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;
as well as URLs for NNTP newsgroup(s).