Link to home
Start Free TrialLog in
Avatar of Snowlcok
Snowlcok

asked on

Cryptic Eth0 error

Recently I installed Mandrake7.0
and when I examine my /var/log/messages I found that there is an error message that reads: Apr 25 01:06:53 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3

If I leave my computer on long enough, I will get this error at least once a day. The time of day when the error shows up is random.

The ethernet card in question is
AMD PCnet32 PCI card.

My system specification is below
Distro:                      Mandrake-Linux
version:                     Linux Mandrake release 7.0 (Air) + CLE v0.9 (Yami)
kernel:                      2.2.14-15mdk
CPU:                         i686
RAM: 223meg


I need to know why this is occuring and how to fix it.

Detailed suggestion on how to track down this error will be considered as full answer.

Avatar of Snowlcok
Snowlcok

ASKER

CLE (YAMI) patch is a patch to support code page CP950  so I can read Chinese. It does not modify network / device code in
anyway.
Could I see what the output of "ifconfig eth0" looks like?
eth0      Link encap:Ethernet  HWaddr 00:80:29:62:FA:48  
          inet addr:24.24.20.234  Bcast:24.24.23.255  Mask:255.255.248.0
          UP BROADCAST NOTRAILERS RUNNING  MTU:1500  Metric:1
          RX packets:5545 errors:0 dropped:0 overruns:0 frame:2
          TX packets:954 errors:0 dropped:0 overruns:0 carrier:0
          collisions:40 txqueuelen:100
          Interrupt:5 Base address:0x9400

eth1      Link encap:Ethernet  HWaddr 00:00:C0:38:C6:81  
          inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:609 errors:0 dropped:0 overruns:0 frame:0
          TX packets:507 errors:0 dropped:0 overruns:0 carrier:0
          collisions:4 txqueuelen:100
          Interrupt:10 Base address:0x310 Memory:d0000-d4000

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:3924  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
I thought that perhaps the TX fifo might have been getting trashed from NIC errors, but I don't see any in the ifconfig output. You say that the error gets logged at random times. The example in the question is in the wee hours of the morning when there's typically very little activity except possibly on Internet servers. Is this system a personal workstation or some sort of server? Is there any correlation with the time of the error and other services being in use? Check the other logs in /var/log for network activity or other errors.
messages.1:Apr 20 00:27:22 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 00:52:50 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 11:33:23 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 11:33:46 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 12:09:56 ith2-aea kernel: eth0: Tx FIFO error! CSR0=06e3
messages.1:Apr 20 12:18:15 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 18:39:37 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 19:40:33 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 19:55:49 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 20:26:21 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 20 20:38:27 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 01:34:13 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 01:47:13 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 01:55:02 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 04:17:18 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 19:15:52 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 19:16:20 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 21 21:46:40 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 22 02:46:28 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 22 02:47:27 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 22 15:05:06 ith2-aea kernel: eth0: Tx FIFO error! CSR0=06e3
messages.1:Apr 22 15:42:28 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 22 15:44:43 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3
messages.1:Apr 22 18:00:30 ith2-aea kernel: eth0: Tx FIFO error! CSR0=02e3

Here are errors that occured in 3 days. I did grep -Gr 'Tx FIFO' *

Then I tried check what services was run prior to the error or during the error-- again using grep.

The closest service that get started is usually an hour away.
I do not know if it was one of the daemon / resident program giving error since grep -Gr 'error' * shows no coinciding error from other apps.

This is my personal workstation,
I do have ftp server, telnetd, sshd, and httpd open. So I can login to my computer from work. I am suspecting it's the apm module since it happens when I am away from my computer... I think I will try and disable apm and see if that solves the problem.

Adjusted points from 100 to 200
ASKER CERTIFIED SOLUTION
Avatar of jlevie
jlevie

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I realized I didn't have apm module installed(I thought I did). So that ruled out the possibility apm module is the source of my problem.

So I found another ethernet card and replaced the AMD one. since I replaced the card, I haven't gotten any Tx FIFO error in 24 hours(it usually happens daily). So I guess the problem is very likely to be a faulty NIC card. It's sad. The AMD PCnet card has been with me for 4 years, and it has always serve me well.

I will keep monitoring the syslog. If I don't get another error in the next 24 hours, I will consider my system cured and give out the points.

Thanks for all your help.
Did you replace that NIC with another AMD? If you didn't, it could be that the AMD cards are sensitive to something that's occuring on the "outside" that the replacement card can handle. I'm guessing that your outside NIC is connected to a cable modem or DSL line and I've seen some really screwy packets from those things on occasion.

Personally, I'd just mark the card as "possibly suspect" and keep it around. Other than the FIFO error it looks like it worked normally and may be perfectly acceptable on any other ethernet.
I replaced the AMD card with a generic via-rhine card. And the NIC card is connecting to a cable modem.  

I will keep your suggestion in mind. And will try the AMD card in other machines in the inner network.

Again, thanks for your help ^_^

I really appreciate your patience in helping me identify possible sources of problem. Your knowledge of the system is superb! Thank you very much.
You are most welcome. I'm happy that we were able to solve the problem and I certainly appreciate your most gracious compliment.