Posts Tagged ‘apic’

ACPI/APIC/IRQ/Transmit timed out blues with Ubuntu 8.04

January 16, 2009

My mythbackend kept rebooting randomly (about after 5-15 mins since starting to view recording) when viewing recordings while it was recording a new show.

Interestingly enough it did not reboot while not recording a show and when I was watching the show…

Another nasty symptom was classic NETDEV WATCHDOG: eth0: transmit timed out.
System does not crash, IP stack just goes to lala land.

I’m have Abit VT-7 motherboard (VIA PT880 / VT8237 chipset) , 478 socket P4 HT 3.0Ghz CPU and on-board eth (VIA).

root@hippo:~# lspci |grep Eth
00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
root@hippo:~#

VIA eth module:

root@hippo:~# modinfo via_rhine
filename: /lib/modules/2.6.24-21-generic/kernel/drivers/net/via-rhine.ko
license: GPL
description: VIA Rhine PCI Fast Ethernet driver
author: Donald Becker
srcversion: 8158094F4B64FDC36073DA7
alias: pci:v00001106d00003053sv*sd*bc*sc*i*
alias: pci:v00001106d00003106sv*sd*bc*sc*i*
alias: pci:v00001106d00003065sv*sd*bc*sc*i*
alias: pci:v00001106d00003043sv*sd*bc*sc*i*
depends: mii
vermagic: 2.6.24-21-generic SMP mod_unload 586
parm: max_interrupt_work:VIA Rhine maximum events handled per interrupt (int)
parm: debug:VIA Rhine debug level (0-7) (int)
parm: rx_copybreak:VIA Rhine copy breakpoint for copy-only-tiny-frames (int)
parm: avoid_D3:Avoid power state D3 (work-around for broken BIOSes) (bool)

Kernel and ubuntu info:

root@hippo:~# uname -a
Linux hippo 2.6.24-21-generic #1 SMP Tue Oct 21 23:43:45 UTC 2008 i686 GNU/Linux
root@hippo:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=8.04
DISTRIB_CODENAME=hardy
DISTRIB_DESCRIPTION="Ubuntu 8.04.1"
root@hippo:~#

I tried several boot options from these links:

https://help.ubuntu.com/community/BootOptions#Common%20Boot%20Options

https://help.ubuntu.com/community/DebuggingIRQProblems

https://help.ubuntu.com/community/ReschedulingInterrupts

Finally it seems that noapic kernel option works (excerpt from /boot/grub/menu.lst):

title Ubuntu 8.04.1, kernel 2.6.24-21-generic (noapic)
root (hd0,0)
kernel /boot/vmlinuz-2.6.24-21-generic root=UUID=2479d97c-58e1-4958-8340-3302beab8202 noapic ro quiet splash
initrd /boot/initrd.img-2.6.24-21-generic

Uptime is now 3 days:

root@hippo:~# uptime
12:43:02 up 3 days, 14:26, 7 users, load average: 0.02, 0.02, 0.00
root@hippo:~#

Interestingly many IRQs are shared now (that was not the case before), but still backend is stable.

root@hippo:~# cat /proc/interrupts
CPU0 CPU1
0: 161 0 XT-PIC-XT timer
1: 1337 0 XT-PIC-XT i8042
2: 0 0 XT-PIC-XT cascade
8: 3 0 XT-PIC-XT rtc
9: 0 0 XT-PIC-XT acpi
10: 40262825 0 XT-PIC-XT ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb3, eth1, ivtv1, VIA8237
11: 8216376 0 XT-PIC-XT sata_via, uhci_hcd:usb4, uhci_hcd:usb5, ivtv0
12: 112 0 XT-PIC-XT i8042
14: 1211069 0 XT-PIC-XT libata
15: 0 0 XT-PIC-XT libata
NMI: 0 0 Non-maskable interrupts
LOC: 40120197 43631526 Local timer interrupts
RES: 240304 951646 Rescheduling interrupts
CAL: 179 428 function call interrupts
TLB: 41068 48883 TLB shootdowns
TRM: 0 0 Thermal event interrupts
SPU: 0 0 Spurious interrupts
ERR: 0
MIS: 0

lspci:

root@hippo:~# lspci
00:00.0 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:00.1 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:00.2 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:00.3 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:00.4 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:00.7 Host bridge: VIA Technologies, Inc. PT880 Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
00:09.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
00:0c.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
00:0f.0 RAID bus controller: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80)
00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South]
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60)
00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 78)
01:00.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200] (rev a1)
root@hippo:~#

I also blacklisted ipv6 (some blog suggested it):

root@hippo:/etc/modprobe.d# tail -4 blacklist

blacklist ipv6

blacklist pcspkr
root@hippo:/etc/modprobe.d#

I think there is not universal solution to this. You just need to try different command line options.
Google is your friend… Hope this post helps somebody.

Advertisements