On Wed, 22 Jun 2011, Ben Greear wrote:

> This is hacked and tainted 2.6.38.8 kernel, but no modifications to the
> e1000e driver.
> 
> Didn't seem to cause any troubles.

How about info on a test to help reproduce the issue?  RESETTING is set 
either by the tx_timeout task or by the ethtool calls.

could it be your code is somehow related to those?  

I'm wondering if the WARN_ON needs to be after the cancel_work_sync and 
cancel_timers?

 
> This code coorelates to:
> 
> static int e1000_close(struct net_device *netdev)
> {
>       struct e1000_adapter *adapter = netdev_priv(netdev);
>       struct pci_dev *pdev = adapter->pdev;
> 
>       WARN_ON(test_bit(__E1000_RESETTING, &adapter->state));
> 
>       pm_runtime_get_sync(&pdev->dev);
> 
> 
> WARNING: at 
> /home/greearb/git/linux-2.6.dev.38.y/drivers/net/e1000e/netdev.c:3701 
> e1000_close+0x3a/0x139 [e1000e]()
> Hardware name: X7DBU
> Modules linked in: wanlink(P) xt_TPROXY nf_tproxy_core xt_socket 
> nf_defrag_ipv6 xt_connlimit macvlan pktgen fuse iscsi_tcp libiscsi_tcp 
> libiscsi 
> scsi_transport_iscsi ip6table_filter ip6_tables ebtable_nat ebtables stp llc 
> nfs lockd fscache nfs_acl auth_rpcgss sunrpc ipv6 kvm_intel kvm uinput 
> iTCO_wdt 
> i5k_amb i5000_edac iTCO_vendor_support edac_core ioatdma i2c_i801 pcspkr 
> e1000e floppy microcode dca shpchp radeon ttm drm_kms_helper drm hwmon 
> i2c_algo_bit 
> i2c_core [last unloaded: wanlink]
> Pid: 14057, comm: ip Tainted: P            2.6.38.8+ #17
> Call Trace:
>   [<ffffffff8104556a>] ? warn_slowpath_common+0x80/0x98
>   [<ffffffff81045597>] ? warn_slowpath_null+0x15/0x17
>   [<ffffffffa0319b5f>] ? e1000_close+0x3a/0x139 [e1000e]
>   [<ffffffff81369481>] ? __dev_close_many+0xa6/0xe2
>   [<ffffffff813694ee>] ? __dev_close+0x31/0x42
>   [<ffffffff81366cba>] ? __dev_change_flags+0xb9/0x13d
>   [<ffffffff813692db>] ? dev_change_flags+0x1c/0x52
>   [<ffffffff81374da5>] ? do_setlink+0x28f/0x6ca
>   [<ffffffffa01ebe15>] ? inet6_fill_ifla6_attrs+0x26f/0x283 [ipv6]
>   [<ffffffff81375502>] ? rtnl_newlink+0x258/0x43e
>   [<ffffffff81375357>] ? rtnl_newlink+0xad/0x43e
>   [<ffffffff8141652c>] ? sub_preempt_count+0x92/0xa5
>   [<ffffffff8103fde4>] ? get_parent_ip+0x11/0x42
>   [<ffffffff8141652c>] ? sub_preempt_count+0x92/0xa5
>   [<ffffffff813747ff>] ? rtnetlink_rcv_msg+0x1cf/0x1ec
>   [<ffffffff81374630>] ? rtnetlink_rcv_msg+0x0/0x1ec
>   [<ffffffff81386352>] ? netlink_rcv_skb+0x3e/0x8f
>   [<ffffffff81374629>] ? rtnetlink_rcv+0x21/0x28
>   [<ffffffff8138612d>] ? netlink_unicast+0xe9/0x152
>   [<ffffffff81386930>] ? netlink_sendmsg+0x269/0x287
>   [<ffffffff813577db>] ? __sock_sendmsg+0x66/0x72
>   [<ffffffff81357f93>] ? sock_sendmsg+0xa3/0xbc
>   [<ffffffff810ad40c>] ? __lru_cache_add+0x7f/0x9f
>   [<ffffffff8103fde4>] ? get_parent_ip+0x11/0x42
>   [<ffffffff8141652c>] ? sub_preempt_count+0x92/0xa5
>   [<ffffffff813565b6>] ? might_fault+0x17/0x19
>   [<ffffffff81360f33>] ? copy_from_user+0x37/0x3f
>   [<ffffffff8136129f>] ? verify_iovec+0x4f/0xa3
>   [<ffffffff81358762>] ? sys_sendmsg+0x1d5/0x23c
>   [<ffffffff810bf0e6>] ? handle_mm_fault+0x18e/0x1a6
>   [<ffffffff8141645e>] ? do_page_fault+0x320/0x35c
>   [<ffffffff810da580>] ? slab_pre_alloc_hook+0x23/0x27
>   [<ffffffff810c2d90>] ? do_brk+0x2b8/0x31a
>   [<ffffffff8108b24c>] ? audit_syscall_entry+0x119/0x145
>   [<ffffffff8100aad2>] ? system_call_fastpath+0x16/0x1b
> ---[ end trace 0d2e296daab3eefd ]---
> 
> 

------------------------------------------------------------------------------
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
[email protected]
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