# USB: Help! IRQ problem (2.6 kernel): Unlink after no-IRQ?

## uglyman

Hi alls,

I been working on this for about 4 days now. Please help. I need to use usb mass storage. specifically for a usb SD card reader. every time I plug in a usb device I get the following in dmesg:

```
Jan 31 22:43:35 [kernel] uhci_hcd 0000:00:07.2: Unlink after no-IRQ?  Controller                                                      is probably using the wrong IRQ.

```

here is the tail from /var/log/everything/current I have verbose messages on for the usb stuff. I plug in a usb keychain drive here. You can see the mess of errors that follows. I have used usb before on this machine successfully. It was actually very recently but I reinstalled since then.

```
Jan 31 22:43:34 [kernel]  [<e099a72e>] usb_control_msg+0x9e/0xc0 [usbcore]

Jan 31 22:43:34 [kernel]  [<c020515f>] sprintf+0x1f/0x30

Jan 31 22:43:34 [kernel]  [<e0997268>] hub_port_connect_change+0x198/0x4a0 [usbc                                                     ore]

Jan 31 22:43:34 [kernel]  [<e09979c0>] hub_events+0x450/0x550 [usbcore]

Jan 31 22:43:34 [kernel] usb 1-2: new full speed USB device using uhci_hcd and a                                                     ddress 2

Jan 31 22:43:35 [kernel] uhci_hcd 0000:00:07.2: Unlink after no-IRQ?  Controller                                                      is probably using the wrong IRQ.

Jan 31 22:43:36 [kernel] usb 1-2: khubd timed out on ep0in

Jan 31 22:43:36 [kernel] usb 1-2: device descriptor read/64, error -110

Jan 31 22:43:41 [kernel] usb 1-2: khubd timed out on ep0in

Jan 31 22:43:46 [kernel] usb 1-2: khubd timed out on ep0out

                - Last output repeated twice -

Jan 31 22:43:52 [kernel] usb 1-2: device not accepting address 2, error -110

Jan 31 22:43:52 [kernel] usb 1-2: new full speed USB device using uhci_hcd and a                                                     ddress 3

Jan 31 22:43:53 [kernel] usb 1-2: khubd timed out on ep0in

Jan 31 22:43:58 [kernel] usb 1-2: khubd timed out on ep0out

                - Last output repeated twice -

Jan 31 22:44:03 [kernel] usb 1-2: device not accepting address 3, error -110

Jan 31 22:44:04 [kernel] usb 1-2: new full speed USB device using uhci_hcd and a                                                     ddress 4

Jan 31 22:44:09 [kernel] usb 1-2: khubd timed out on ep0out

Jan 31 22:44:10 [kernel] Badness in local_bh_enable at kernel/softirq.c:140

Jan 31 22:44:10 [kernel]  [<c02f73c1>] nf_hook_slow+0xf1/0x130

Jan 31 22:44:10 [kernel]  [<c011eb9a>] __do_softirq+0xba/0xd0

Jan 31 22:44:10 [kernel]  [<c0103236>] common_interrupt+0x1a/0x20

Jan 31 22:44:10 [kernel]  [<c03006c0>] ip_local_deliver_finish+0x0/0x180

                - Last output repeated twice -

Jan 31 22:44:10 [kernel]  [<c0300840>] ip_rcv_finish+0x0/0x270

Jan 31 22:44:10 [kernel]  [<c0103236>] common_interrupt+0x1a/0x20

Jan 31 22:44:11 [kernel] Badness in local_bh_enable at kernel/softirq.c:140

Jan 31 22:44:11 [kernel]  [<c02f73c1>] nf_hook_slow+0xf1/0x130

Jan 31 22:44:11 [kernel]  [<c011ebdd>] do_softirq+0x2d/0x30

Jan 31 22:44:11 [kernel]  [<c01006d3>] default_idle+0x23/0x30

Jan 31 22:44:11 [kernel]  [<c031ab13>] tcp_v4_send_reset+0xf3/0x170

Jan 31 22:44:11 [kernel]  [<c03006c0>] ip_local_deliver_finish+0x0/0x180

                - Last output repeated twice -

Jan 31 22:44:12 [kernel] Badness in local_bh_enable at kernel/softirq.c:140

Jan 31 22:44:12 [kernel]  [<c02f73c1>] nf_hook_slow+0xf1/0x130

Jan 31 22:44:12 [kernel]  [<c011ebdd>] do_softirq+0x2d/0x30

Jan 31 22:44:12 [kernel]  [<c010077f>] cpu_idle+0x5f/0x70

Jan 31 22:44:12 [kernel]  [<c03001d3>] ip_local_deliver+0x1e3/0x210

Jan 31 22:44:12 [kernel]  [<c0300a29>] ip_rcv_finish+0x1e9/0x270

Jan 31 22:44:14 [kernel] usb 1-2: khubd timed out on ep0out

Jan 31 22:44:14 [kernel] usb 1-2: device not accepting address 4, error -110

Jan 31 22:44:14 [kernel] usb 1-2: new full speed USB device using uhci_hcd and a                                                     ddress 5

Jan 31 22:44:19 [kernel] usb 1-2: khubd timed out on ep0out

```

here is some more info:

```
thorin uglyman # cat /proc/interrupts

           CPU0       CPU1       

  0:     946686       5461    IO-APIC-edge  timer

  1:       4118          2    IO-APIC-edge  i8042

  2:          0          0          XT-PIC  cascade

  5:          0          0   IO-APIC-level  uhci_hcd

  8:          1          1    IO-APIC-edge  rtc

 10:       2197          1   IO-APIC-level  eth0

 11:      81885         14   IO-APIC-level  ide2, ide3, EMU10K1, nvidia

 12:      31065          2    IO-APIC-edge  i8042

 14:         12          2    IO-APIC-edge  ide0

 15:         12          2    IO-APIC-edge  ide1

NMI:          0          0 

LOC:     952156     952141 

ERR:          0

MIS:          0

thorin uglyman # lspci     

0000:00:00.0 Host bridge: VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x] (rev c4)

0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598/694x [Apollo MVP3/Pro133x AGP]

0000:00:07.0 ISA bridge: VIA Technologies, Inc. VT82C596 ISA [Mobile South] (rev 23)

0000:00:07.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 10)

0000:00:07.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 11)

0000:00:07.3 Bridge: VIA Technologies, Inc. VT82C596 Power Management (rev 30)

0000:00:08.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07)

0000:00:08.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 07)

0000:00:0b.0 Unknown mass storage controller: Triones Technologies, Inc. HPT366/368/370/370A/372 (rev 03)

0000:00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

0000:01:00.0 VGA compatible controller: nVidia Corporation NV11 [GeForce2 MX/MX 400] (rev b2)

thorin uglyman # cat /proc/version

Linux version 2.6.11-rc2 (root@thorin) (gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)) #7 SMP Mon Jan 31 20:27:40 PST 2005

thorin uglyman # emerge info

Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20041102-r0, 2.6.11-rc2 i686)

=================================================================

System uname: 2.6.11-rc2 i686 Pentium III (Coppermine)

Gentoo Base System version 1.6.8

Python:              dev-lang/python-2.3.4 [2.3.4 (#1, Jan 25 2005, 21:30:14)]

dev-lang/python:     2.3.4

sys-devel/autoconf:  2.13, 2.59-r6

sys-devel/automake:  1.5, 1.8.5-r2, 1.6.3, 1.7.9, 1.4_p6, 1.9.4

sys-devel/binutils:  2.14.90.0.8-r1, 2.15.92.0.2-r2

sys-devel/libtool:   1.5.10-r3

virtual/os-headers:  2.6.8.1-r2

ACCEPT_KEYWORDS="x86 ~x86"

AUTOCLEAN="yes"

CFLAGS="-O2 -march=pentium3 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/alias /var/qmail/control"

CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"

CXXFLAGS="-O2 -march=pentium3 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"

GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/local/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="x86 16bit X aac aalib acpi acpi4linux aim alsa apache2 apm audiofile authdaemond avi bash-completion bdf bitmap-fonts blender-game bonobo bootsplash calendar cdparanoia cdr cdrom cgi chroot cpdflib crypt css ctype cups dga directfb disablexmb divx4linux djbfft doc dvd dvdr dvdread encode esd exif extlib f77 fam fame fb fbcon ffmpeg flac flash fmod font-server foomaticdb fortran fpx frascend freetype ftp gd gif gimp gimpprint gkrellm gmail gpm gtk gtk2 gtkhtml guile hardenedphp hbci icq ieee1394 image imagemagick imap imlib ipv6 jabber jack java javascript jbig joystick jp2 jpeg ladcca ladspa largeterminal lcms libg++ libwww lzo lzw lzw-tiff mad maildir mbox mikmod mime mimencode mjpeg mmx2 motif mp3 mpeg mpeg2 mpeg4 mplayer msn multislot mysql ncurses nls nptl nvidia offensive ogg oggvorbis opengl oss pam pdflib perl php png posix ppds python qmail qt quicktime quotes readline rtc ruby screenshot sdl sockets speedo speex spell sse ssl svg svga tcltk tcpd tga tiff truetype truetype-fonts type1-fonts usb vcd vcdimager vhosts videos vorbis xml xml2 xmms xv yahoo zlib"

Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS

```

I have tried kernel configs until my eyes hurt from menuconfigging and my room was hot from compiling. nothing works. As I said I used this same usb hardware under a slightly older 2.6 kernel on my previous install. I have tried the latest gentoo dev sources and regular developement sources (what i am running now). I am going crazy here. I have googled my ass off. I have found some explanations of the errors I get, but nothing has shown me a solution yet.

lemme know if there is any more info I can post to explain the situation better.

Thanks a lot everybody. I am really in a jam on this one.

later,

uglyman

----------

## uglyman

yaaaaay finally after more than a week I finally have it working. I was trying to downgrade my kernel to get back to an older one since I know usb was working for me before. I kept having kernel panics cause I had a couple drinks while I was configging the kernel. So then I would just boot one of my old kernels. Finally I got the idea to try noapic. I just added "noapic" to the boot params in grub and boom! everything works. The card reader I got shows up as four different devices because there are four slots for different types of card. I finally figured out how to mount the damn thing and it is working great.

So in case somebody else has this prob and runs across this I will post my grub.conf below:

```
# Boot automatically after 30 secs.

timeout 30

# By default, boot the first entry.

default 0

# Fallback to the second entry.

fallback 1

# For booting GNU/Linux

title  Gentoo

root (hd2,0)

kernel /vmlinuz noapic root=/dev/hdg3

```

then I just plug in the device and all modules are loaded automatically

 :Very Happy:   :Very Happy:   :Very Happy:   :Mr. Green:   :Mr. Green:   :Mr. Green:   :Mr. Green:   :Very Happy:   :Very Happy:   :Very Happy: 

----------

