On 06/01/2011 10:55 AM, Waskiewicz Jr, Peter P wrote: > (Sorry for top-post) > > Yes, we're here. Sometimes our IT overlords flag mail from e1000-devel > and it hides in our spam folder. I'll get this to the right person if he > hasn't seen it already.
Ok, wasn't sure.. I just posted a patch that fixes the problem to netdev. It's certainly possible my 'fix' isn't 100% right, but it at least fixes the kernel splat for me. Thanks, Ben > > PJ Waskiewicz > Sr. Software Engineer > 40 GbE Linux SW Lead > LAN Access Division > Intel Corporation > phone: 503-712-4522 > peter.p.waskiewicz...@intel.com > > > > > > > On 6/1/11 10:28 AM, "Ben Greear"<gree...@candelatech.com> wrote: > >> On 05/31/2011 10:50 AM, Ben Greear wrote: >>> It seems that 'ethtool -t ethX' causes a BUG on 2.6.34.8 (at least). >>> >>> Here is info from a lock-dep enabled build. I haven't had time to >>> poke at it any closer yet... >>> >>> You get a BUG without lockdep as well, but of course it looks different >>> than what is below. >> >> At least part of the bug is that the adapter->fdir_perfect_lock >> is not initialized for the 82598 NIC, in the ixgbe_sw_init >> method. >> >> Btw, are any Intel developers active on this list..or should I >> just post to netdev? >> >> Thanks, >> Ben >> >> >>> >>> ixgbe 0000:03:00.1: eth9: NIC Link is Down >>> INFO: trying to register non-static key (ffff88031b8ca130) lock-name: >>> (null) is_module_addr: 0 >>> the code is fine but needs lockdep annotation. >>> turning off the locking correctness validator. >>> Pid: 3100, comm: ethtool Not tainted 2.6.34.8 #1 >>> Call Trace: >>> [<ffffffff81065c6e>] register_lock_class+0x186/0x359 >>> [<ffffffff810669b4>] ? mark_lock+0x2d/0x22d >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff81067a07>] __lock_acquire+0xc2/0xcf8 >>> [<ffffffff8108e0d7>] ? free_irq+0x3b/0x4e >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff810d2ff8>] ? kfree+0xd5/0xee >>> [<ffffffff81066e85>] ? trace_hardirqs_on_caller+0x111/0x135 >>> [<ffffffff81066eb6>] ? trace_hardirqs_on+0xd/0xf >>> [<ffffffff810686a1>] lock_acquire+0x64/0x81 >>> [<ffffffffa005f876>] ? ixgbe_close+0x36/0x140 [ixgbe] >>> [<ffffffff8108e0e1>] ? free_irq+0x45/0x4e >>> [<ffffffff813e8001>] _raw_spin_lock+0x36/0x45 >>> [<ffffffffa005f876>] ? ixgbe_close+0x36/0x140 [ixgbe] >>> [<ffffffffa005ed9f>] ? ixgbe_free_irq+0x4f/0x1b0 [ixgbe] >>> [<ffffffffa005f876>] ixgbe_close+0x36/0x140 [ixgbe] >>> [<ffffffff81343f2a>] __dev_close+0x73/0x86 >>> [<ffffffff813440a4>] dev_close+0x1a/0x40 >>> [<ffffffffa006bd2f>] ixgbe_diag_test+0x14f/0x17d0 [ixgbe] >>> [<ffffffff810669b4>] ? mark_lock+0x2d/0x22d >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff810d37b6>] ? __kmalloc+0xec/0x11c >>> [<ffffffff813475ef>] ? dev_ethtool+0x865/0x14c2 >>> [<ffffffff81066e85>] ? trace_hardirqs_on_caller+0x111/0x135 >>> [<ffffffff81066eb6>] ? trace_hardirqs_on+0xd/0xf >>> [<ffffffff8134760c>] dev_ethtool+0x882/0x14c2 >>> [<ffffffff8134584d>] dev_ioctl+0x4e6/0x62d >>> [<ffffffff810a06da>] ? unlock_page+0x22/0x27 >>> [<ffffffff81331f83>] sock_do_ioctl+0x38/0x43 >>> [<ffffffff8133238b>] sock_ioctl+0x20e/0x21d >>> [<ffffffff810b813e>] ? handle_mm_fault+0x374/0x809 >>> [<ffffffff810ebd8d>] vfs_ioctl+0x2d/0xa1 >>> [<ffffffff810ec303>] do_vfs_ioctl+0x48b/0x4d1 >>> [<ffffffff8105b340>] ? up_read+0x1e/0x36 >>> [<ffffffff813e8cf9>] ? retint_swapgs+0x13/0x1b >>> [<ffffffff810ec39a>] sys_ioctl+0x51/0x74 >>> [<ffffffff81009a82>] system_call_fastpath+0x16/0x1b >>> BUG: spinlock bad magic on CPU#6, ethtool/3100 >>> lock: ffff88031b8ca118, .magic: 00000000, .owner:<none>/-1, >>> .owner_cpu: 0 >>> Pid: 3100, comm: ethtool Not tainted 2.6.34.8 #1 >>> Call Trace: >>> [<ffffffff811d3e3a>] spin_bug+0x9c/0xa3 >>> [<ffffffff811d3ef5>] do_raw_spin_lock+0x29/0x13c >>> [<ffffffff813e8009>] _raw_spin_lock+0x3e/0x45 >>> [<ffffffffa005f876>] ? ixgbe_close+0x36/0x140 [ixgbe] >>> [<ffffffffa005ed9f>] ? ixgbe_free_irq+0x4f/0x1b0 [ixgbe] >>> [<ffffffffa005f876>] ixgbe_close+0x36/0x140 [ixgbe] >>> [<ffffffff81343f2a>] __dev_close+0x73/0x86 >>> [<ffffffff813440a4>] dev_close+0x1a/0x40 >>> [<ffffffffa006bd2f>] ixgbe_diag_test+0x14f/0x17d0 [ixgbe] >>> [<ffffffff810669b4>] ? mark_lock+0x2d/0x22d >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff810d37b6>] ? __kmalloc+0xec/0x11c >>> [<ffffffff813475ef>] ? dev_ethtool+0x865/0x14c2 >>> [<ffffffff81066e85>] ? trace_hardirqs_on_caller+0x111/0x135 >>> [<ffffffff81066eb6>] ? trace_hardirqs_on+0xd/0xf >>> [<ffffffff8134760c>] dev_ethtool+0x882/0x14c2 >>> [<ffffffff8134584d>] dev_ioctl+0x4e6/0x62d >>> [<ffffffff810a06da>] ? unlock_page+0x22/0x27 >>> [<ffffffff81331f83>] sock_do_ioctl+0x38/0x43 >>> [<ffffffff8133238b>] sock_ioctl+0x20e/0x21d >>> [<ffffffff810b813e>] ? handle_mm_fault+0x374/0x809 >>> [<ffffffff810ebd8d>] vfs_ioctl+0x2d/0xa1 >>> [<ffffffff810ec303>] do_vfs_ioctl+0x48b/0x4d1 >>> [<ffffffff8105b340>] ? up_read+0x1e/0x36 >>> [<ffffffff813e8cf9>] ? retint_swapgs+0x13/0x1b >>> [<ffffffff810ec39a>] sys_ioctl+0x51/0x74 >>> [<ffffffff81009a82>] system_call_fastpath+0x16/0x1b >>> >>> ===================================== >>> [ BUG: bad unlock balance detected! ] >>> ------------------------------------- >>> ethtool/3100 is trying to release lock ((null)) at: >>> [<ffffffffa005f8d6>] ixgbe_close+0x96/0x140 [ixgbe] >>> but there are no more locks to release! >>> >>> other info that might help us debug this: >>> 1 lock held by ethtool/3100: >>> #0: (rtnl_mutex){+.+.+.}, at: [<ffffffff8134dd70>] >>> rtnl_lock+0x12/0x14 >>> >>> stack backtrace: >>> Pid: 3100, comm: ethtool Not tainted 2.6.34.8 #1 >>> Call Trace: >>> [<ffffffffa005f8d6>] ? ixgbe_close+0x96/0x140 [ixgbe] >>> [<ffffffff810687c4>] print_unlock_inbalance_bug+0xd6/0xe0 >>> [<ffffffff8106888e>] lock_release_non_nested+0xc0/0x227 >>> [<ffffffffa005f8d6>] ? ixgbe_close+0x96/0x140 [ixgbe] >>> [<ffffffffa005f8d6>] ? ixgbe_close+0x96/0x140 [ixgbe] >>> [<ffffffff81068b31>] lock_release+0x13c/0x167 >>> [<ffffffff813e85c4>] _raw_spin_unlock+0x1e/0x52 >>> [<ffffffffa005f8d6>] ixgbe_close+0x96/0x140 [ixgbe] >>> [<ffffffff81343f2a>] __dev_close+0x73/0x86 >>> [<ffffffff813440a4>] dev_close+0x1a/0x40 >>> [<ffffffffa006bd2f>] ixgbe_diag_test+0x14f/0x17d0 [ixgbe] >>> [<ffffffff810669b4>] ? mark_lock+0x2d/0x22d >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff810d37b6>] ? __kmalloc+0xec/0x11c >>> [<ffffffff813475ef>] ? dev_ethtool+0x865/0x14c2 >>> [<ffffffff81066e85>] ? trace_hardirqs_on_caller+0x111/0x135 >>> [<ffffffff81066eb6>] ? trace_hardirqs_on+0xd/0xf >>> [<ffffffff8134760c>] dev_ethtool+0x882/0x14c2 >>> [<ffffffff8134584d>] dev_ioctl+0x4e6/0x62d >>> [<ffffffff810a06da>] ? unlock_page+0x22/0x27 >>> [<ffffffff81331f83>] sock_do_ioctl+0x38/0x43 >>> [<ffffffff8133238b>] sock_ioctl+0x20e/0x21d >>> [<ffffffff810b813e>] ? handle_mm_fault+0x374/0x809 >>> [<ffffffff810ebd8d>] vfs_ioctl+0x2d/0xa1 >>> [<ffffffff810ec303>] do_vfs_ioctl+0x48b/0x4d1 >>> [<ffffffff8105b340>] ? up_read+0x1e/0x36 >>> [<ffffffff813e8cf9>] ? retint_swapgs+0x13/0x1b >>> [<ffffffff810ec39a>] sys_ioctl+0x51/0x74 >>> [<ffffffff81009a82>] system_call_fastpath+0x16/0x1b >>> BUG: spinlock bad magic on CPU#6, ethtool/3100 >>> lock: ffff88031b8ca118, .magic: 00000000, .owner: ethtool/3100, >>> .owner_cpu: 6 >>> Pid: 3100, comm: ethtool Not tainted 2.6.34.8 #1 >>> Call Trace: >>> [<ffffffff811d3e3a>] spin_bug+0x9c/0xa3 >>> [<ffffffff811d3e62>] do_raw_spin_unlock+0x21/0x8b >>> [<ffffffff813e85cc>] _raw_spin_unlock+0x26/0x52 >>> [<ffffffffa005f8d6>] ixgbe_close+0x96/0x140 [ixgbe] >>> [<ffffffff81343f2a>] __dev_close+0x73/0x86 >>> [<ffffffff813440a4>] dev_close+0x1a/0x40 >>> [<ffffffffa006bd2f>] ixgbe_diag_test+0x14f/0x17d0 [ixgbe] >>> [<ffffffff810669b4>] ? mark_lock+0x2d/0x22d >>> [<ffffffff81066c06>] ? mark_held_locks+0x52/0x70 >>> [<ffffffff810d37b6>] ? __kmalloc+0xec/0x11c >>> [<ffffffff813475ef>] ? dev_ethtool+0x865/0x14c2 >>> [<ffffffff81066e85>] ? trace_hardirqs_on_caller+0x111/0x135 >>> [<ffffffff81066eb6>] ? trace_hardirqs_on+0xd/0xf >>> [<ffffffff8134760c>] dev_ethtool+0x882/0x14c2 >>> [<ffffffff8134584d>] dev_ioctl+0x4e6/0x62d >>> [<ffffffff810a06da>] ? unlock_page+0x22/0x27 >>> [<ffffffff81331f83>] sock_do_ioctl+0x38/0x43 >>> [<ffffffff8133238b>] sock_ioctl+0x20e/0x21d >>> [<ffffffff810b813e>] ? handle_mm_fault+0x374/0x809 >>> [<ffffffff810ebd8d>] vfs_ioctl+0x2d/0xa1 >>> [<ffffffff810ec303>] do_vfs_ioctl+0x48b/0x4d1 >>> [<ffffffff8105b340>] ? up_read+0x1e/0x36 >>> [<ffffffff813e8cf9>] ? retint_swapgs+0x13/0x1b >>> [<ffffffff810ec39a>] sys_ioctl+0x51/0x74 >>> [<ffffffff81009a82>] system_call_fastpath+0x16/0x1b >>> >> >> >> -- >> Ben Greear<gree...@candelatech.com> >> Candela Technologies Inc http://www.candelatech.com >> >> >> -------------------------------------------------------------------------- >> ---- >> Simplify data backup and recovery for your virtual environment with >> vRanger. >> Installation's a snap, and flexible recovery options mean your data is >> safe, >> secure and there when you need it. Data protection magic? >> Nope - It's vRanger. Get your free trial download today. >> http://p.sf.net/sfu/quest-sfdev2dev >> _______________________________________________ >> E1000-devel mailing list >> E1000-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/e1000-devel >> To learn more about Intel® Ethernet, visit >> http://communities.intel.com/community/wired -- Ben Greear <gree...@candelatech.com> Candela Technologies Inc http://www.candelatech.com ------------------------------------------------------------------------------ Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Data protection magic? Nope - It's vRanger. Get your free trial download today. http://p.sf.net/sfu/quest-sfdev2dev _______________________________________________ E1000-devel mailing list E1000-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired