Solved

Cryptic Eth0 error

Posted on 2000-04-27
12
502 Views
Last Modified: 2012-06-22
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.

0
Comment
Question by:Snowlcok
[X]
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
  • 7
  • 5
12 Comments
 

Author Comment

by:Snowlcok
ID: 2758008
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.
0
 
LVL 40

Expert Comment

by:jlevie
ID: 2758071
Could I see what the output of "ifconfig eth0" looks like?
0
 

Author Comment

by:Snowlcok
ID: 2759190
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
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 40

Expert Comment

by:jlevie
ID: 2761343
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.
0
 

Author Comment

by:Snowlcok
ID: 2761472
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.

0
 

Author Comment

by:Snowlcok
ID: 2761553
Adjusted points from 100 to 200
0
 
LVL 40

Accepted Solution

by:
jlevie earned 200 total points
ID: 2762180
If it's only happening when the system is idle for a while, then I'd suspect apm also, except that you've got two cards and only one exhipits the problem. If it were apm, I'd sort of expect to see at least one or two similar errors from the other NIC.

 That error is comming from within the pcnet32 driver. It's not entirely clear to me from looking at the code exactly what causes it, but it's being generated from within the interrupt handler. I sort of think that it's caused by an abnormal event on the NIC itself. Therefore, it seems possible that you've either got a bad NIC card, or something is happening on the "wire" the card is connected to. Swapping the cards ought to reveal which it is. If the problem follows the card, then it's the NIC. If the problem follows the "wire", then it's your Internet connection.

Okay, after writing the above I can conceive of a situation where apm might affect only the outside NIC. If the inside systems were very quiet and apm engaged, it's possible that there would have been no packets on the inside wire during the "power down" time. Assuming that you are on a cable modem or DSL line, I can almost guarantee that there would be network traffic on the outside wire. If the interrupt that's generated when a packet arrives isn't serviced fast enough, the FIFO on the card would get over-run and thus a FIFO error. So, yes disbale apm and see if the error persists.
0
 

Author Comment

by:Snowlcok
ID: 2763734
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.
0
 
LVL 40

Expert Comment

by:jlevie
ID: 2763946
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.
0
 

Author Comment

by:Snowlcok
ID: 2764245
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 ^_^

0
 

Author Comment

by:Snowlcok
ID: 2764249
I really appreciate your patience in helping me identify possible sources of problem. Your knowledge of the system is superb! Thank you very much.
0
 
LVL 40

Expert Comment

by:jlevie
ID: 2764259
You are most welcome. I'm happy that we were able to solve the problem and I certainly appreciate your most gracious compliment.
0

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
maybe no no httpd.conf 6 77
Moving from Mcrypt to OpenSSL 18 63
I NEED A "BARE" LINUX ... 9 86
SSSD - Automatic kerberos ticket initialization 1 13
rdate is a Linux command and the network time protocol for immediate date and time setup from another machine. The clocks are synchronized by entering rdate with the -s switch (command without switch just checks the time but does not set anything). …
The purpose of this article is to demonstrate how we can use conditional statements using Python.
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

740 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