# HELP - eth0 transmit queue time-outs --SOLVED

## Moriah

My choke firewall LAN side NIC has been complaining about transmit queue time-outs:

```

Jun 19 16:01:22 jehoiada kernel: ------------[ cut here ]------------

Jun 19 16:01:22 jehoiada kernel: WARNING: CPU: 1 PID: 0 at net/sched/sch_generic.c:264 dev_watchdog+0x256/0x260()

Jun 19 16:01:22 jehoiada kernel: NETDEV WATCHDOG: eth0 (e1000e): transmit queue 0 timed out

Jun 19 16:01:22 jehoiada kernel: Modules linked in: xt_nat iptable_nat nf_nat_ipv4 nf_nat coretemp kvm e1000e

Jun 19 16:01:22 jehoiada kernel: CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.17.7-gentoo #9

Jun 19 16:01:22 jehoiada kernel: Hardware name: Hewlett-Packard HP Compaq dc5800 Small Form Factor/2820h, BIOS 786F2 v01.53 08/27/2008

Jun 19 16:01:22 jehoiada kernel:  0000000000000009 ffff88007e303db0 ffffffff81707e11 ffff88007e303df8

Jun 19 16:01:22 jehoiada kernel:  ffff88007e303de8 ffffffff81049798 0000000000000000 ffff88007a2fc000

Jun 19 16:01:22 jehoiada kernel:  0000000000000001 0000000000000001 ffff88007a2fc000 ffff88007e303e48

Jun 19 16:01:22 jehoiada kernel: Call Trace:

Jun 19 16:01:22 jehoiada kernel:  <IRQ>  [<ffffffff81707e11>] dump_stack+0x45/0x56

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff81049798>] warn_slowpath_common+0x78/0xa0

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff81049807>] warn_slowpath_fmt+0x47/0x50

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8159ba26>] dev_watchdog+0x256/0x260

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8159b7d0>] ? dev_graft_qdisc+0x80/0x80

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff81098896>] call_timer_fn+0x36/0x100

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8159b7d0>] ? dev_graft_qdisc+0x80/0x80

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff81098b53>] run_timer_softirq+0x1f3/0x2d0

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8104d21e>] __do_softirq+0xee/0x280

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8104d5bd>] irq_exit+0x9d/0xb0

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff8103263f>] smp_apic_timer_interrupt+0x3f/0x50

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff817117ea>] apic_timer_interrupt+0x6a/0x70

Jun 19 16:01:22 jehoiada kernel:  <EOI>  [<ffffffff8107d812>] ? cpu_startup_entry+0xd2/0x310

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff810a6833>] ? clockevents_register_device+0xe3/0x140

Jun 19 16:01:22 jehoiada kernel:  [<ffffffff810309df>] start_secondary+0x17f/0x1f0

Jun 19 16:01:22 jehoiada kernel: ---[ end trace 7dc837fb8f7b245b ]---

Jun 19 16:01:22 jehoiada kernel: e1000e 0000:00:19.0 eth0: Reset adapter unexpectedly

Jun 19 16:01:24 jehoiada kernel: e1000e: eth0 NIC Link is Up 100 Mbps Half Duplex, Flow Control: None

Jun 19 16:01:59 jehoiada kernel: e1000e 0000:00:19.0 eth0: Reset adapter unexpectedly

Jun 19 16:02:01 jehoiada kernel: e1000e: eth0 NIC Link is Up 100 Mbps Half Duplex, Flow Control: None

Jun 19 16:02:13 jehoiada kernel: emerge (12530) used greatest stack depth: 11296 bytes left

Jun 19 16:02:16 jehoiada kernel: e1000e 0000:00:19.0 eth0: Reset adapter unexpectedly

Jun 19 16:02:18 jehoiada kernel: e1000e: eth0 NIC Link is Up 100 Mbps Half Duplex, Flow Control: None

Jun 19 16:02:33 jehoiada kernel: e1000e 0000:00:19.0 eth0: Reset adapter unexpectedly

Jun 19 16:02:35 jehoiada kernel: e1000e: eth0 NIC Link is Up 100 Mbps Half Duplex, Flow Control: None

```

Since it was flakey, and mostly occurred during heavy loads, I suspected a hardware problem.  Since the eth0 port is built into the motherboard, I pulled out the boot disk drive and moved it to an otherwise identical machine.  With the new machine, I still had the same symptoms.  This machine has been operating for about 6 months without any problem until the last few days.  I suspect a software update might be responsible for the problem, since I seem to have ruled out a hardware failure.

Does anybody have any idea what might have recently changed in the last week or so that could have caused this problem?

----------

## Moriah

I just added another ethernet card today to the offending machine.  It was the same type as the card that was working.  I am no longer using the ethernet NIC on the motherboard.  The choke firewall seems to be working beautifully; therefore, I am forced to cond\clude that there is something wrong with the driver for the motherboard NIC, since the symptoms were the same with 2 dirrerent motherboards, but went away when I switched to a different card.  Remember, this all used to work fine with the motherboard NIC, so there must be a driver problem, and I worked around it by using a different NIC.

----------

## ct85711

Well, if it is a driver issue, the most likely possible changes to linux-firmware or you compiled a new kernel version, especially for a network issue.  So the question is, what changed from when it was working to when it stopped...

----------

## Moriah

I don't recall installing a kernel, but maybe a loadable driver module?  I just don't remember.  I have too many systems to keep track of...

Truth is, I worked around the problem, and the choke firewall is functioning properly again.  I don't have time to root cause this issue.  I was just hoping someone else might recognize the symptoms and offer a diagnosis.

----------

## ct85711

The general rule is that all drivers is from the kernel, with a few exceptions like ATI/NVIDIA drivers, a few wifi drivers, and maybe some printer ones (even though those drivers is only for cups not the kernel).  There is, of course, a few userland drivers, most specifically for VM's but those are for outside the kernel.  On firmware side, the most common change is from linux-firmware package.  Usually if it is driver issue, booting into a older kernel (that is known to work) will quickly narrow that side down.  Going with the kernel not changing, that eliminates the drivers being the cause, and leaves us something on the software side or the hardware it's self.  In this case, it may have been the integrated network controller started dieing. 

As with any troubleshooting, having a list what changed can help narrow the issue down.  By default, portage does keep a record of what packages was just installed.  Otherwise, if you use uname -a, it will tell you when your running kernel was compiled.

```
Linux Oate 4.1.1-gentoo-r1 #2 SMP Fri Jul 10 23:05:54 CDT 2015 x86_64 AMD A10-7850K Radeon R7, 12 Compute Cores 4C+8G AuthenticAMD GNU/Linux
```

Like on mine, it shows I'm running 4.1.1-r1 for version, was the 2nd compile of that version, and compiled on Jul 10.

----------

## Moriah

Not hardware, maybe firmware.  Look at the first post.  See where it says I swapped the computer but kept the same drive and still had the same problem?

----------

