[vortex] At wit's end - help - 3c905B problem: hanging on LAN connection

Smoke conrad@ceibhion.dhs.org
Thu Dec 20 20:12:00 2001


Hi all,

I was wondering if anyone else had experienced problems using a 3C509B
card on a LAN, and if so, what to do about it? My configuration is as
follows: I have a cable modem connected to my firewall machine and
from there a second ethernet card is connected to a hub. all the other
LAN machines then get their feed off this hub.

one of these other machines has a 3c905B which works fine for the most
part (communicating with machines outside the LAN, out on the
net). however, when trying to communicate with the firewall/file
server, things start to go wrong. 

interactive SSH sessions are fine, as are most NFS file accesses. If i
try copying a file _to_ the file server, though, the connection
"hangs". the same happens when using ftp to transfer a file (in either
direction) or when starting an X client on the file server and
exporting the display to the machine with the 3c905B. 

The symptoms of this "hanging" are that the session freezes, and
nothing else can use the ethernet interface (pings all fail,
etc.). the only solution is to take down the interface, bring it back
up, and add the necessary routing information again. then i have to
kill the process that caused the hang, or else it will happen again
within a few seconds.

After trying various things i think i have narrowed it down to the
3c905B card, its configuration or its driver. another machine
connected to the same ethernet cable does not experience these
problems, nor do any other machines on the LAN. i can only assume that
connections outside the LAN are ok because the rate of packets coming
in is slowed by the cable modem to the extent that it's
"safe". Interactive sessions consist of a fairly slow, constant
trickle of traffic. Anything generating a rapid succession of packets
causes problems.

As the subject line says, I'm at wit's end for something else to
try. The worst of it is, if i don't catch this hang in time and fix it
as described above, pretty soon the whole system hangs! I have
included the output of mii-diag during one of these hangs below:

$ mii-diag -w
Using the default interface 'eth0'.
Basic registers of MII PHY #24:  3000 786d 0000 0000 01e1 0020 0004
2001.
 Basic mode control register 0x3000: Auto-negotiation enabled.
 You have link beat, and everything is working OK.
 Your link partner is generating 10baseT link beat  (no autonegotiation).
   End of basic transceiver information.

Monitoring the MII transceiver status.
18:29:35.888  Baseline value of MII BMSR (basic mode status register) is 786d.
18:31:18.231  MII BMSR now 7849:   no link, NWay busy, No Jabber (0000).
18:31:20.141  MII BMSR now 7869:   no link, NWay done, No Jabber (0020).
   New link partner capability is 0020 0004: 10baseT.
18:31:20.153  MII BMSR now 786d: Good link, NWay done, No Jabber (0020).

after the first time stamp nothing happens until i start an X client
and cause a hang. then the next 4 lines appear and the connection is
hung.

Curiously enough, the usual log file entries didn't appear during this
or subsequent attempts. i left one hang run its course and had the
whole system freeze up on me. after a reset (and waiting for the fsck
to run...), i caused another hang and ended up with the usual log
entries i have seen during these events:

Dec 20 19:11:04 noname kernel: eth0: Resetting the Tx ring pointer.
Dec 20 19:11:14 noname kernel: eth0: Resetting the Tx ring pointer.

and from another log file:

Dec 20 19:11:03 noname kernel: eth0: transmit timed out, tx_status 00 status 0000.
Dec 20 19:11:03 noname kernel:   diagnostics: net 0012 media 8880 dma 00000092.
Dec 20 19:11:03 noname kernel:   Flags; bus-master 1, dirty 63(15) current 79(15)
Dec 20 19:11:03 noname kernel:   Transmit list 013823c0 vs. c13825c0.
Dec 20 19:11:03 noname kernel:   0: @c1382200  length 800005ea status 000105ea
Dec 20 19:11:03 noname kernel:   1: @c1382240  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   2: @c1382280  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   3: @c13822c0  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   4: @c1382300  length 80000392 status 00000392
Dec 20 19:11:03 noname kernel:   5: @c1382340  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   6: @c1382380  length 800003be status 000103be
Dec 20 19:11:03 noname kernel:   7: @c13823c0  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   8: @c1382400  length 800005ea status 000005ea
Dec 20 19:11:03 noname kernel:   9: @c1382440  length 800005ea status 000005ea
Dec 20 19:11:04 noname kernel:   10: @c1382480  length 800005ea status 000005ea
Dec 20 19:11:04 noname kernel:   11: @c13824c0  length 800005ea status 000005ea
Dec 20 19:11:04 noname kernel:   12: @c1382500  length 80000392 status 00000392
Dec 20 19:11:04 noname kernel:   13: @c1382540  length 800005ea status 800005ea
Dec 20 19:11:04 noname kernel:   14: @c1382580  length 800003be status 800003be
Dec 20 19:11:04 noname kernel:   15: @c13825c0  length 800005ea status 000105ea
Dec 20 19:11:13 noname kernel: eth0: transmit timed out, tx_status 00 status 0000.
Dec 20 19:11:13 noname kernel:   diagnostics: net 0012 media 8880 dma 00000000.
Dec 20 19:11:13 noname kernel:   Flags; bus-master 1, dirty 63(15) current 79(15)
Dec 20 19:11:13 noname kernel:   Transmit list 00000000 vs. c13825c0.
Dec 20 19:11:13 noname kernel:   0: @c1382200  length 800005ea status 000105ea
Dec 20 19:11:13 noname kernel:   1: @c1382240  length 800005ea status 000005ea
Dec 20 19:11:13 noname kernel:   2: @c1382280  length 800005ea status 000005ea
Dec 20 19:11:13 noname kernel:   3: @c13822c0  length 800005ea status 000005ea
Dec 20 19:11:13 noname kernel:   4: @c1382300  length 80000392 status 00000392
Dec 20 19:11:13 noname kernel:   5: @c1382340  length 800005ea status 000005ea
Dec 20 19:11:13 noname kernel:   6: @c1382380  length 800003be status 000103be
Dec 20 19:11:13 noname kernel:   7: @c13823c0  length 800005ea status 000005ea
Dec 20 19:11:13 noname kernel:   8: @c1382400  length 800005ea status 000005ea
Dec 20 19:11:14 noname kernel:   9: @c1382440  length 800005ea status 000005ea
Dec 20 19:11:14 noname kernel:   10: @c1382480  length 800005ea status 000005ea
Dec 20 19:11:14 noname kernel:   11: @c13824c0  length 800005ea status 000005ea
Dec 20 19:11:14 noname kernel:   12: @c1382500  length 80000392 status 00000392
Dec 20 19:11:14 noname kernel:   13: @c1382540  length 800005ea status 800005ea
Dec 20 19:11:14 noname kernel:   14: @c1382580  length 800003be status 800003be
Dec 20 19:11:14 noname kernel:   15: @c13825c0  length 800005ea status 000105ea

any help with this would be greatly appreciated!

Thanks,
-Conrad.