From: Moni Shoua <monis@voltaire.com>
To: Roland Dreier <rdreier@cisco.com>, Jay Vosburgh <fubar@us.ibm.com>
Cc: jeff@garzik.org, David Miller <davem@davemloft.net>,
ogerlitz@voltaire.com, netdev@vger.kernel.org,
Moni Levy <monil@voltaire.com>
Subject: Re: [PATCH] IB/ipoib: Bound the net device to the ipoib_neigh structue
Date: Sun, 14 Oct 2007 17:51:15 +0200 [thread overview]
Message-ID: <47123AF3.9010201@voltaire.com> (raw)
In-Reply-To: <ada3awhcsnw.fsf@cisco.com>
Roland Dreier wrote:
> > It happens only when ib interfaces are slaves of a bonding device.
> > I thought before that the stuck is in napi_disable() but it's almost right.
> > I put prints before and after call to napi_disable and see that it is called twice.
> > I'll try to investigate in this direction.
> >
> > ib0: stopping interface
> > ib0: before napi_disable
> > ib0: after napi_disable
> > ib0: downing ib_dev
> > ib0: All sends and receives done.
> > ib0: stopping interface
> > ib0: before napi_disable
>
> Yes, two napi_disable()s in a row without a matching napi_enable()
> will deadlock. I guess the question is why the ipoib interface is
> being stopped twice.
>
> If you just take the net-2.6.24 tree (without bonding patches), does
> bonding for ethernet interfaces work OK, or is there a similar problem
> with double napi_disable()? How about bonding of ethernet after this
> batch of bonding patches?
>
> - R.
Ok, I think I know what happens here.
When bonding gets an NETDEV_GOING_DONW event it releases the slave and
by the way closes the slave device (this is a new code). ifconfig on the other hand
closes the deivice one more time and this is why we see 2 napi_disable() in a row.
The fix in my opinion is in bonding - it should react to NETDEV_UNREGISTER and not to NETDEV_GOING_DONW.
I want to test this point and if it's good I'll submit new patches.
thanks
MoniS
prev parent reply other threads:[~2007-10-14 15:51 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <11916151232222-git-send-email-fubar@us.ibm.com>
[not found] ` <470C200D.4010705@pobox.com>
2007-10-10 0:56 ` [PATCH] IB/ipoib: Bound the net device to the ipoib_neigh structue Jeff Garzik
2007-10-10 1:12 ` David Miller
2007-10-10 1:18 ` Jay Vosburgh
2007-10-10 16:03 ` Moni Shoua
2007-10-10 18:31 ` Roland Dreier
2007-10-11 14:48 ` Moni Shoua
2007-10-11 20:17 ` Roland Dreier
2007-10-11 22:01 ` Jay Vosburgh
2007-10-13 15:24 ` Moni Shoua
2007-10-14 15:51 ` Moni Shoua [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=47123AF3.9010201@voltaire.com \
--to=monis@voltaire.com \
--cc=davem@davemloft.net \
--cc=fubar@us.ibm.com \
--cc=jeff@garzik.org \
--cc=monil@voltaire.com \
--cc=netdev@vger.kernel.org \
--cc=ogerlitz@voltaire.com \
--cc=rdreier@cisco.com \
/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).