netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Skidmore, Donald C" <donald.c.skidmore@intel.com>
To: Ben Hutchings <ben@decadent.org.uk>
Cc: Stephen Hemminger <stephen@networkplumber.org>,
	"Kirsher, Jeffrey T" <jeffrey.t.kirsher@intel.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Subject: RE: ixgbe: RTNL assertion failed
Date: Sat, 4 May 2013 21:05:05 +0000	[thread overview]
Message-ID: <F6FB0E698C9B3143BDF729DF222866464C28E2AE@ORSMSX110.amr.corp.intel.com> (raw)
In-Reply-To: <20130504015406.GP2619@decadent.org.uk>



> -----Original Message-----
> From: Ben Hutchings [mailto:ben@decadent.org.uk]
> Sent: Friday, May 03, 2013 6:54 PM
> To: Skidmore, Donald C
> Cc: Stephen Hemminger; Kirsher, Jeffrey T; netdev@vger.kernel.org
> Subject: Re: ixgbe: RTNL assertion failed
> 
> On Fri, May 03, 2013 at 11:17:39PM +0000, Skidmore, Donald C wrote:
> > > -----Original Message-----
> > > From: netdev-owner@vger.kernel.org [mailto:netdev-
> > > owner@vger.kernel.org] On Behalf Of Stephen Hemminger
> > > Sent: Friday, May 03, 2013 12:09 PM
> > > To: Kirsher, Jeffrey T
> > > Cc: netdev@vger.kernel.org
> > > Subject: ixgbe: RTNL assertion failed
> > >
> > > Running 3.9 kernel, ixgbe is splatting on resume from suspend.
> > >
> > > [26430.213254] ixgbe 0000:01:00.0: setting latency timer to 64
> > > [26430.213257]
> > > RTNL: assertion failed at
> > > /build/buildd-linux_3.2.41-2-amd64-Wvc92F/linux-
> > > 3.2.41/net/core/dev.c (1758) [26430.213259] Pid: 7839, comm:
> > > kworker/u:1 Not tainted 3.2.0-4-amd64 #1 Debian 3.2.41-2 [26430.213261]
> Call Trace:
> [...]
> > I'm having a little problem finding a path were we call
> > netif_set_real_num_tx_queues without holding RTNL in net-next.  While
> > looking over the stack dump one of our engineers noticed the text "Not
> > tainted 3.2.0-4-amd64 #1 Debian 3.2.41-2 ".  Could this mean I'm
> > looking over the wrong source?  It would make me feel better as I'm
> > not seeing anything as is. :)
> 
> Indeed, this is not 3.9.
> 
> The version of ixgbe in this Debian kernel has bql support backported, but is
> otherwise the same as in 3.2.41.  I assume that this bug has been fixed some
> time between 3.2 and 3.9, but no-one requested that the fix be included in
> stable branches.  Please can you identify the fix?
> 
> Ben.
> 
> --
> Ben Hutchings
> We get into the habit of living before acquiring the habit of thinking.
>                                                               - Albert Camus

I believe this is the patch:

commit 34948a947d1a576c10afee6d14792fd237549577
Author: Benjamin Poirier <bpoirier@suse.de>
Date:   Fri Apr 6 07:20:21 2012 +0000

    ixgbe: add missing rtnl_lock in PM resume path

    Upon resume from standby, ixgbe may trigger the ASSERT_RTNL() in
    netif_set_real_num_tx_queues(). The call stack is:
        netif_set_real_num_tx_queues
        ixgbe_set_num_queues
        ixgbe_init_interrupt_scheme
        ixgbe_resume

    Signed-off-by: Benjamin Poirier <bpoirier@suse.de>
    Tested-by: Stephen Ko <stephen.s.ko@intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/i
index dac7c01..9e2be8c 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -4836,7 +4836,9 @@ static int ixgbe_resume(struct pci_dev *pdev)

        pci_wake_from_d3(pdev, false);

+       rtnl_lock();
        err = ixgbe_init_interrupt_scheme(adapter);
+       rtnl_unlock();
        if (err) {
                e_dev_err("Cannot initialize interrupts for device\n");
                return err;


Thanks,
-Don Skidmore <donald.c.skidmore@intel.com> 

  parent reply	other threads:[~2013-05-04 21:05 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-03 19:09 ixgbe: RTNL assertion failed Stephen Hemminger
2013-05-03 23:17 ` Skidmore, Donald C
2013-05-04  1:54   ` Ben Hutchings
2013-05-04  3:51     ` Stephen Hemminger
2013-05-04 21:05     ` Skidmore, Donald C [this message]
2013-05-04 21:21       ` Ben Hutchings
2013-05-06 14:58         ` Stephen Hemminger
2013-05-10  4:36           ` Ben Hutchings

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=F6FB0E698C9B3143BDF729DF222866464C28E2AE@ORSMSX110.amr.corp.intel.com \
    --to=donald.c.skidmore@intel.com \
    --cc=ben@decadent.org.uk \
    --cc=jeffrey.t.kirsher@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=stephen@networkplumber.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).