Thread (7 messages) 7 messages, 2 authors, 2011-11-23

Re: Kernel v3.0.8 igb driver dies when pulling network cable

From: Stefan Priebe - Profihost AG <hidden>
Date: 2011-11-23 06:15:43
Also in: lkml, stable

Hi Alex,
It seems like there might be an issue with something specific to your
board since I tried reproducing the issue here on an 82576 based adapter
and the stable 3.0.9 kernel I have and I have not had much success.
but as it is working fine with the up2date igb module - it still was 
fixed ;-)

To reproduce try the following (gave me 100% success rate). Configure 
eth0 to DHCP, leave eth1 unconfigured.
Boot the system with lan cable plugged into eth1 !!
When the boot has finished switch the LAN cable from eth1 to eth0.
I'm assuming the device that is failing is eth0.  I was wondering if you
could send me the output of the following three commands so that I can
do some further work to try and isolate the root cause for this issue:
ethtool eth0
ethtool -e eth0
grep eth0 /proc/interrupts
Will send them as soon i have access to the machine again.
The issue seems to be that your adapter is not detecting that the cable
was unplugged.  This in turn is leaving stale packets on the Tx ring and
is what is resulting in the dev_watchdog message you are seeing.
Are you sure? Cause when you look at the dmesg you'll see this:

igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX

ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

STACKTRACE!

igb 0000:0a:00.0: eth0: Reset adapter

eth0: no IPv6 routers present

igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX

igb 0000:0a:00.0: eth0: Reset adapter

igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX

So it happens when the cable is plugged in and NOT when i unplug it.

Stefan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help