Massive Lockup

Olaf Flebbe o.flebbe@science-computing.de
Tue Dec 14 11:06:43 1999


Hi,

I have problems with the eepro100.c network driver. 
(Otherwise I should not waste bandwith ...) 

The network adapter is built into an asus m8000 series laptop

lspci detects:

00:00.0 Host bridge: Intel Corporation: Unknown device 7194 (rev 01)
00:00.1 Multimedia audio controller: Intel Corporation: Unknown device
7195
00:02.0 VGA compatible controller: Silicon Motion, Inc.: Unknown device
0710 (rev a3)
00:07.0 ISA bridge: Intel Corporation: Unknown device 7198 (rev 01)
00:07.1 IDE interface: Intel Corporation: Unknown device 7199
00:07.2 USB Controller: Intel Corporation: Unknown device 719a
00:07.3 Bridge: Intel Corporation: Unknown device 719b
00:09.0 PCI bridge: Action Tec Electronics Inc: Unknown device 0100 (rev
11)
00:0a.0 CardBus bridge: Ricoh Co Ltd RL5C475 (rev 80)
01:04.0 Ethernet controller: Intel Corporation 82557 (rev 08)
                                               ^^^^^
01:08.0 Communication controller: Lucent Microelectronics: Unknown
device 0448 (rev 01)

lspci -t
      +-09.0-[01]--+-04.0
      |            \-08.0

Looks like it is driven by the cardbus bridge. (But is not on a PCMCIA
card, it is built in!)

Using it with a kernel module.

When I use the laptop with massive NFS traffic the driver supplied by
kernel 2.2.10 locks the laptop complete after a ~30 Min. 

I see several kernel messages:

Dec 14 11:30:06 crab kernel: eth0: Transmit timed out: status 0050  0000
at 287247/2872
61 command 000c0000.
Dec 14 11:30:06 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 11:30:21 crab kernel: eth0: Transmit timed out: status 0050  0000
at 289263/2892
77 command 000c0000.
Dec 14 11:30:21 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 11:30:36 crab kernel: eth0: Transmit timed out: status 0050  0000
at 289839/2898
53 command 000c0000.
Dec 14 11:30:36 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 11:30:51 crab kernel: eth0: Transmit timed out: status 0050  0000
at 292319/2923
33 command 000c0000.
Dec 14 11:30:51 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 11:31:06 crab kernel: eth0: Transmit timed out: status 0050  0000
at 293231/2932
45 command 000c0000.
Dec 14 11:31:06 crab kernel: eth0: Trying to restart the transmitter...

[ boom....]

Dec 14 13:34:54 crab kernel: eth0: OEM i82557/i82558 10/100 Ethernet at
0xecc0, 00:20:E
0:61:4B:19, IRQ 11.
Dec 14 13:54:37 crab kernel: eth0: Transmit timed out: status 0050  0000
at 103199/1032
13 command 000c0000.
Dec 14 13:54:37 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 13:54:52 crab kernel: eth0: Transmit timed out: status 0050  0000
at 104543/1045
57 command 000c0000.


I downloaded 1.09l from the web page and tried it on the 2.2.10 kernel:
One sees several messages (see below) and random network timeouts of
~3sec duration...

1.09l seems to be more stable, but it seem to crash the machine after
~2hours. This is better, but still worse. It has a good point, though:
After waking the laptop up from suspend to RAM, the network still works,
opposed to the vanilla 2.2.10 eepro100.c driver.

Most of the time the network adapters is reset and it works again but
sometimes the computer  locks up completly. The messages `Trying to
restart the transmitter' are comming at a rate of about 6 per minute for
heavy traffic!

Is it worth to put on debugging? debug=5 on the command line? Is it
worth posting more kernel messages?? (BTW: the network is 10MBit) 

Dec 14 14:35:14 crab kernel: eth0: Transmit timed out: status 0050  0070
at 42790/42802
 command 000c0000.
Dec 14 14:35:14 crab kernel: eth0: Tx ring dump,  Tx queue 42802 /
42790:
Dec 14 14:35:14 crab kernel: eth0:   0 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   1 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   2 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   3 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   4 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   5 000ca000.
Dec 14 14:35:14 crab kernel: eth0: * 6 000c0000.
Dec 14 14:35:14 crab kernel: eth0:   7 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   8 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   9 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   10 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   11 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   12 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   13 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   14 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   15 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   16 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   17 400ca000.
Dec 14 14:35:14 crab kernel: eth0:  =18 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   19 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   20 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   21 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   22 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   23 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   24 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   25 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   26 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   27 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   28 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   29 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   30 00 000ca000.
Dec 14 14:35:14 crab kernel: eth0:   31 000ca000.
Dec 14 14:35:14 crab kernel: eth0:Printing Rx ring (next to receive into
64871).
Dec 14 14:35:14 crab kernel: eth0: Trying to restart the transmitter...
Dec 14 14:35:34 crab kernel: eth0: Transmit timed out: status 0050  0070
at 49672/49684
 command 000c0000.
Dec 14 14:35:34 crab kernel: eth0: Tx ring dump,  Tx queue 49684 /
49672:
Dec 14 14:35:34 crab kernel: eth0:   0 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   1 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   2 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   3 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   4 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   5 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   6 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   7 000ca000.
Dec 14 14:35:34 crab kernel: eth0: * 8 000c0000.
Dec 14 14:35:34 crab kernel: eth0:   9 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   10 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   11 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   12 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   13 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   14 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   15 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   16 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   17 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   18 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   19 400ca000.
Dec 14 14:35:34 crab kernel: eth0:  =20 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   21 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   22 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   23 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   24 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   25 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   26 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   27 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   28 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   29 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   30 000ca000.
Dec 14 14:35:34 crab kernel: eth0:   31 000ca000.
Dec 14 14:35:34 crab kernel: eth0:Printing Rx ring (next to receive into
71668).
Dec 14 14:35:34 crab kernel: eth0: Trying to restart the transmitter...

....etc...

-- 
  Dr. Olaf Flebbe                            Phone +49 (0)7071-9457-32
  science + computing gmbh                     FAX +49 (0)7071-9457-27
  Hagellocher Weg 71
  D-72070 Tuebingen  Email: o.flebbe@science-computing.de

      The amount of work to be done increases in proportion to the
                  amount of work already completed.