netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  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).