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&#174; 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&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to