Bug: Transmit timed out

Peter Franck vic@ibas-labs.de
Sat Nov 20 13:32:22 1999


Hello, I have experienced a bug(?) in the eepro100.c code.

Problem description:
--------------------
Frequent complete network interface hang for several seconds. (Transmit
timed out)

The hang mostly occurs (almost immediately) during an active telnet
session
to another Linux Box while listening to mp3 songs using the "kmpg"
player
(mp3 server mounted over SMB or NFS, makes no difference), but the
problem
is not limited to this condition. Very low network traffic here now
(weekend).

Version 1.091 recovers from the problem much faster than 1.08 used to,
but the problem
still persists.

Following hints were tried without success:
- ifconfig promisc
- ifconfig -multicast
- modprobing with multicast_filter_limit=0


Help would be appreciated because i have a whole pile of eepro100 boards
installed.

Peter

---------------- More Info ----------------

PC: BX Chipset, PII-400 (and a PII-300 with LX Chipset tested as well)
NIC: INTEL PRO/100 - label:009027229259 41827 689661-004 - chip:
SB82558B/L838EA50/SL2P4
Version: eepro100.c:v1.09l 8/7/99
uname -a: Linux superdisk 2.2.10 #3 Sat Nov 20 17:15:17 CET 1999 i686
unknown
/proc/interrupts:
           CPU0
  0:     220668          XT-PIC  timer
  1:       7050          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  5:     331401          XT-PIC  es1371
  8:          2          XT-PIC  rtc
  9:         45          XT-PIC  aic7xxx
 10:     113697          XT-PIC  eth0         <--- eepro100 as module
(no options)
 12:      20426          XT-PIC  PS/2 Mouse
 13:          1          XT-PIC  fpu
 14:     217549          XT-PIC  ide0
 15:          7          XT-PIC  ide1
NMI:          0

/proc/pci:
Bus  0, device   8, function  0:
Ethernet controller: Intel 82557 (rev 5).
Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable. 
Latency=64.  Min Gnt=8.Max Lat=56.
Prefetchable 32 bit memory at 0xe9101000 [0xe9101008].
I/O at 0xe400 [0xe401].
Non-prefetchable 32 bit memory at 0xe9000000 [0xe9000000].

ifconfig:
eth0      Link encap:Ethernet  HWaddr 00:90:27:22:B0:11
          inet addr:192.168.23.143  Bcast:192.168.23.255 
Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:108075 errors:1 dropped:0 overruns:0 frame:0
          TX packets:130183 errors:24 dropped:0 overruns:535 carrier:0
          collisions:41 txqueuelen:100
          Interrupt:10 Base address:0xa000

Excerpt from /var/log/messages:

Nov 20 17:34:37 superdisk dhclient: Listening on Socket/eth0
Nov 20 17:34:37 superdisk dhclient: Sending on   Socket/eth0
Nov 20 17:34:37 superdisk dhclient: DHCPREQUEST on eth0 to
255.255.255.255 port 67
Nov 20 17:34:37 superdisk dhclient: DHCPACK from 192.168.23.1
Nov 20 17:42:20 superdisk dhclient: bound to 192.168.23.143 -- renewal
in 1800 seconds.
...
Nov 20 17:45:29 superdisk kernel: eth0: Transmit timed out: status 0050 
0070 at 4324/4336 command 000c0000.
Nov 20 17:45:29 superdisk kernel: eth0: Tx ring dump,  Tx queue 4336 /
4324:
Nov 20 17:45:29 superdisk kernel: eth0:   0 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   1 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   2 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   3 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0: * 4 000c0000.
Nov 20 17:45:29 superdisk kernel: eth0:   5 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   6 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   7 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   8 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   9 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   10 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   11 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   12 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   13 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   14 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   15 400ca000.
Nov 20 17:45:29 superdisk kernel: eth0:  =16 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   17 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   18 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   19 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   20 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   21 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   22 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   23 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   24 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   25 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   26 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   27 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   28 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   29 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   30 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:   31 000ca000.
Nov 20 17:45:29 superdisk kernel: eth0:Printing Rx ring (next to receive
into 3449).
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 0  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 1  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 2  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 3  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 4  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 5  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 6  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 7  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 8  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 9  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 10  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 11  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 12  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 13  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 14  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 15  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 16  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 17  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 18  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 19  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 20  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 21  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 22  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 23  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 24  c0000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 25  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 26  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 27  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 28  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 29  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 30  00000001.
Nov 20 17:45:29 superdisk kernel:   Rx ring entry 31  00000001.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 0 is 3000.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 1 is 782d.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 2 is 02a8.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 3 is 0150.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 4 is 05e1.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 5 is 40a1.
Nov 20 17:45:29 superdisk kernel:   PHY index 1 register 21 is 0000.
Nov 20 17:45:29 superdisk kernel: eth0: Trying to restart the
transmitter...
Nov 20 17:46:05 superdisk kernel: eth0: Transmit timed out: status 0050 
0070 at 5382/5394 command 000c0000.
Nov 20 17:46:05 superdisk kernel: eth0: Tx ring dump,  Tx queue 5394 /
5382:
Nov 20 17:46:05 superdisk kernel: eth0:   0 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   1 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   2 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   3 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   4 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   5 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0: * 6 000c0000.
Nov 20 17:46:05 superdisk kernel: eth0:   7 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   8 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   9 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   10 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   11 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   12 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   13 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   14 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   15 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   16 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   17 400ca000.
Nov 20 17:46:05 superdisk kernel: eth0:  =18 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   19 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   20 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   21 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   22 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   23 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   24 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   25 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   26 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   27 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   28 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   29 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   30 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:   31 000ca000.
Nov 20 17:46:05 superdisk kernel: eth0:Printing Rx ring (next to receive
into 4312).
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 0  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 1  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 2  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 3  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 4  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 5  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 6  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 7  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 8  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 9  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 10  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 11  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 12  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 13  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 14  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 15  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 16  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 17  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 18  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 19  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 20  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 21  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 22  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 23  c0000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 24  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 25  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 26  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 27  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 28  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 29  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 30  00000001.
Nov 20 17:46:05 superdisk kernel:   Rx ring entry 31  00000001.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 0 is 3000.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 1 is 7829.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 2 is 02a8.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 3 is 0150.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 4 is 05e1.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 5 is 40a1.
Nov 20 17:46:05 superdisk kernel:   PHY index 1 register 21 is 0000.
Nov 20 17:46:05 superdisk kernel: eth0: Trying to restart the
transmitter...


-- 
+---------------------------------------------------------------+
| Peter Franck                       mailto:vic@ibas-labs.de    |
| IBAS Data Recovery Labs Germany    http://www.ibas-labs.de    |
| Albert-Einstein-Ring 8             http://www.datenrettung.de |
| D-22761 Hamburg                    http://www.ibas.no         |
+---------------------------------------------------------------+