3Com Problems. Hardware or Software?

Posted on 1997-11-14
Last Modified: 2008-02-26
I have a Machine running the 2.0.25 kernel (Caldera Distribution) and am using it as a firewall with ip_masq. I have been using 3c509 ISA,3c590 Etherlink III PCI (vortex), and 3c595 Etherlink III XL (boomerang) PCI cards.

A while back, every now and then, the network interface that serviced the network behind the firewall would stop working (eth1 3c509). There were no messages from the kernel directly related to eth1. I tried to restart the interface but nothing seemed to fix the problem except a clean reboot. The same problem continued for several weeks with the same interface. After a while I began to suspect that I had a
bad NIC. I replaced the 3c509 ISA card with a new 3c590 Etherlink III PCI. After a few days, the problem returned. I then replaced the card with a 3c595 Etherlink III XL PCI. At the same time  I upgraded the 3c59x.c driver which has support for the XL. Everything seemed to  work fine for several weeks until last thursday when several users started to complain  that TCP/IP connections to services outside the firewall were being disconnected or timing out. I immediately checked the status of the ethernet cards on my firewall looking for signs of errors when I came across strange messages from the kernel:

eth1: transmit timed out, tx_status 00 status e000.
Flags; bus-master 1, full 1; dirty 226228 current 226244.
Transmit list 0029aa60 vs. 0029aa60.
 0: @0029aa20  length 800000aa status 000000aa
 1: @0029aa30  length 800000aa status 000000aa
 2: @0029aa40  length 800000aa status 800000aa
eth1: Freeing Tx ring entries:eth1: transmit timed out, tx_status 00
status e000
Flags; bus-master 1, full 1; dirty 226228 current 226245.
Transmit list 0029aa60 vs. 0029aa60.
 0: @0029aa20  length 800000aa status 000000aa
 1: @0029aa30  length 800000aa status 000000aa
 2: @0029aa40  length 800000aa status 800000aa

Even after the errors, the card seemed to be functioning correctly. I have only seen this error once but users are still reporting problems. At this point I am wondering
if the problem is related to the firewall or the driver since the interface has always been the same? Or, am I having a bad luck with 3com cards?

The kernel says the following about my cards when it boots:
eth0: 3Com 3c590 Vortex 10Mbps at 0xe000, 00:a0:24:70:65:42, IRQ 12
  8K byte-wide RAM 1:1 Rx:Tx split, 10baseT interface.
eth0: Overriding PCI latency timer (CFLT) setting of 32, new value is
eth1: 3Com 3c905 Boomerang 100baseTx at 0xd800, 00:60:97:de:6f:ac, IRQ
  8K word-wide RAM 3:5 Rx:Tx split, MII interface.
eth1: MII transceiver found at address 24.
  Enabling bus-master transmits and whole-frame receives.
eth1: Overriding PCI latency timer (CFLT) setting of 32, new value is
3c59x.c:v0.46B 9/25/97 Donald Becker

Any suggestions?

Thanks in advance,
Eric Lefler

Question by:elefler
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Author Comment

ID: 1586846
Adjusted points to 150

Expert Comment

ID: 1586847
My best suggestion would be to mail the driver author......

Expert Comment

ID: 1586848
This is a known issue with the vortex driver.  Apparently fixed with the newest revision.  Please check out <a href=""></a> for the most current driver, and keep it in bookmarks for later reference.
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 1586849
Ok, I installed the v0.46c version of the driver. I guess I was using v0.46b. Although I have not seen the errors reported above, users are still having the same problems with TCP connections timing out. Also, this afternoon the other ethernet (eth0) card failed. Rebooting was the only way to correct the problem.

The kernel messages I got were:
eth0: Transmit error, Tx status register 90.
eth0: transmit timed out, tx_status 00 status e000.
last message repeated 22 times
eth0: Host error, FIFO diagnostic register 0400.
last message repeated 22 times

Expert Comment

ID: 1586850
Use the 3Com setup program, explicitly state that you do not want full duplex transfers.  BTW, this is a seperate question.  :-)

Author Comment

ID: 1586851
I checked both cards with the 3Com config utility and both have full duplex operation disabled (this is the default setting for these cards). Anyway, the vortex (eth0) never reported errors until I upgraded the driver to .46c. I am going to try the 2.0.23 kernel which includes v.46c to see if this fixed the problem.


Accepted Solution

unicorntech earned 150 total points
ID: 1586852
The original question was wether this was a hardware or software issue and I believe that you will find that it is a hardware issue. To prove this try installing a generic NE2000 eth card and see if you get the same errors. I think you will find that this will eliminate the problems you are getting as it is widely held that 3Com cards and linux do not work wrell together.

Let me know if this fixes it,


Author Comment

ID: 1586853
I agree that the NE2000 is a great card for Linux. However, it's performance is poor. This machine is routing all internet traffic for about 200 machines. Anyway, we are planing to move it to 100mbps switch soon so we need the 10/100 cards.

Well, It turns out that the problem was related to two things. When one of my cards went bad a while back I swapped it for the
3com Etherlink III XL (the only spare card I had on-hand) and upgraded the 3c59x.c driver in order to support the newer
card.  Not only did the driver have a bug in it (1), somehow the default timeout for ip_masq was set to 15 minutes (2). I had never paid much attention to this setting before since it must have been high enough not to cause a problem. Well, it turns out that idle TCP connections were timing out after 15 minutes wich is ok for things like HTTP or FTP. However for SQL*Net and Telent sessions this is a problem. Anyway, I changed this value to 4 hours using ipfwadm and the problem has gone away. My trusty Linux box has been running the 2.0.23 kernel for a week now without problems.

Thanks for everyone's help
Eric Lefler

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
linux / python expert needed 3 102
Computers missing from Windows Explorer Networks 10 157
Linux : can't create transaction lock error 1 86
Cron jobs 12 140
I have seen several blogs and forum entries elsewhere state that because NTFS volumes do not support linux ownership or permissions, they cannot be used for anonymous ftp upload through the vsftpd program.   IT can be done and here's how to get i…
Note: for this to work properly you need to use a Cross-Over network cable. 1. Connect both servers S1 and S2 on the second network slots respectively. Note that you can use the 1st slots but usually these would be occupied by the Service Provide…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question