Subject: Re: rtl8139: NETDEV WATCHDOG: eth0: transmit timed out

From: Marcus Better <[email-masked]>
Date: Sun, 09 Jul 2006 09:23:04 +0200

Thomas Hellström wrote:
> I guess you got the wrong commit, and the correct one should be the one
> where Dave adds vblank interrupts. It should be close to the one you
> listed.

I thought I double-checked that it was the right commit, but will check
again.

> If the network sits on the same IRQ line, it will be disabled as well.

It appears to be on a different IRQ:
~$ cat /proc/interrupts
           CPU0
  0:     202574          XT-PIC  timer
  1:       2649          XT-PIC  i8042
  2:          0          XT-PIC  cascade
  8:          0          XT-PIC  rtc
  9:          0          XT-PIC  acpi
 10:       1059          XT-PIC  yenta, Intel 82801CA-ICH3 Modem, Intel
82801CA-ICH3
 11:      40776          XT-PIC  uhci_hcd:usb1, uhci_hcd:usb2, eth0
 12:     100433          XT-PIC  i8042
 14:      63563          XT-PIC  ide0
 15:       6773          XT-PIC  ide1
NMI:          0
ERR:          0

(This is without i915 loaded though.)

> If you check your kernel logs, you will probably have
> messages about disabled IRQs.

Correct. Here's an example:

Jul  7 16:43:39 kelev kernel: irq 11: nobody cared (try booting with the
"irqpoll" option)
Jul  7 16:43:39 kelev kernel:  [<c0138b74>] __report_bad_irq+0x24/0x90
Jul  7 16:43:39 kelev kernel:  [<c0138c82>] note_interrupt+0x72/0xc0
Jul  7 16:43:39 kelev kernel:  [<c013862e>] __do_IRQ+0xae/0xc0
Jul  7 16:43:39 kelev kernel:  [<c0104a69>] do_IRQ+0x19/0x30
Jul  7 16:43:39 kelev kernel:  [<c01030c2>] common_interrupt+0x1a/0x20
Jul  7 16:43:39 kelev kernel:  [<c011c4fe>] __do_softirq+0x2e/0xa0
Jul  7 16:43:39 kelev kernel:  [<c011c597>] do_softirq+0x27/0x30
Jul  7 16:43:39 kelev kernel:  [<c0104a6e>] do_IRQ+0x1e/0x30
Jul  7 16:43:39 kelev kernel:  [<c01030c2>] common_interrupt+0x1a/0x20
Jul  7 16:43:39 kelev kernel:  [<c0102ef5>] syscall_call+0x7/0xb
Jul  7 16:43:39 kelev kernel: handlers:
Jul  7 16:43:39 kelev kernel: [<e01270c0>] (usb_hcd_irq+0x0/0x60 [usbcore])
Jul  7 16:43:39 kelev kernel: [<e01270c0>] (usb_hcd_irq+0x0/0x60 [usbcore])
Jul  7 16:43:39 kelev kernel: [<e0044160>] (rtl8139_interrupt+0x0/0x1d0
[8139too]
)
Jul  7 16:43:39 kelev kernel: Disabling IRQ #11

Jul  7 16:44:03 kelev kernel: NETDEV WATCHDOG: eth0: transmit timed out
Jul  7 16:44:03 kelev kernel: eth0: Transmit timeout, status 0c 0005
c07f media 9
0.
Jul  7 16:44:03 kelev kernel: eth0: Tx queue start entry 48  dirty entry 44.
Jul  7 16:44:03 kelev kernel: eth0:  Tx descriptor 0 is 0008a062. (queue
head)
Jul  7 16:44:03 kelev kernel: eth0:  Tx descriptor 1 is 0008a062.
Jul  7 16:44:03 kelev kernel: eth0:  Tx descriptor 2 is 0008a062.
Jul  7 16:44:03 kelev kernel: eth0:  Tx descriptor 3 is 0008a062.
Jul  7 16:44:03 kelev kernel: eth0: link up, 100Mbps, full-duplex, lpa
0x45E1