USB related oops in 2.6.6-rk2-bk3 (similar with 2.6.5)

From: Grzegorz Kulewski
Date: Mon Apr 26 2004 - 18:32:16 EST


Hi,

I experienced this oops. I have uhci-hcd and two devices. One is usb
camera (TC111 - probably not supported under linux?) and the
second is speedtouch modem. Everytime I shut down my system (Gentoo) with
2.6.5 and newer I get some oops but system log is down before that and I
have no time to hack start scripts to stop shuting syslog. It occures when
removing some usb modules. So I stopped speedtouch and removed the modules
manually (in stop scripts order I hope). But I have not removed uhci-hcd
module (this module is removed in other part of stop scripts). And...
nothing happened. So I unplugged speedtouch and replugged it back. And I
immendiatelly got atached oops. (I think that I should use ksymoops, but
it is searching for /proc/ksyms that is not present in 2.6 and it does not
like /proc/kallsyms... And it produces nothing but warnings. What options
should I use?)

What can I do to help track the problem down?


thanks in advance

Grzegorz Kulewski


PS. I am subscribbed only to LKML, so CC me, please.Apr 27 00:53:55 polb01 usb 1-1: USB disconnect, address 2
Apr 27 00:53:55 polb01 drivers/usb/core/devio.c:290: spin_is_locked on uninitialized spinlock dd244f6c.
Apr 27 00:53:55 polb01 Unable to handle kernel NULL pointer dereference at virtual address 00000004
Apr 27 00:53:55 polb01 printing eip:
Apr 27 00:53:55 polb01 e09480b8
Apr 27 00:53:55 polb01 *pde = 00000000
Apr 27 00:53:55 polb01 Oops: 0000 [#1]
Apr 27 00:53:55 polb01 PREEMPT DEBUG_PAGEALLOC
Apr 27 00:53:55 polb01 CPU: 0
Apr 27 00:53:55 polb01 EIP: 0060:[<e09480b8>] Not tainted
Apr 27 00:53:55 polb01 EFLAGS: 00010086 (2.6.6-rc2-bk3)
Apr 27 00:53:55 polb01 EIP is at destroy_async+0x88/0x440 [usbcore]
Apr 27 00:53:55 polb01 eax: dd244f6c ebx: 00000000 ecx: 00000001 edx: c0400e98
Apr 27 00:53:55 polb01 esi: dd244f38 edi: daaae000 ebp: daaafe68 esp: daaafe2c
Apr 27 00:53:55 polb01 ds: 007b es: 007b ss: 0068
Apr 27 00:53:55 polb01 Process khubd (pid: 5612, threadinfo=daaae000 task=df10ba10)
Apr 27 00:53:55 polb01 Stack: e094f8d4 e094e4d4 00000122 dd244f6c 00000081 00000014 00000001 daaafe5c
Apr 27 00:53:55 polb01 e09445d1 dac3bbf8 dd244f6c 00000282 dd9faef8 e0959fa0 dd9faf08 daaafe78
Apr 27 00:53:55 polb01 e094866e dd244f38 dd244f84 daaafe94 e093c0f6 dd9faef8 dd9faef8 dd9faf08
Apr 27 00:53:55 polb01 Call Trace:
Apr 27 00:53:55 polb01 [<e09445d1>] usb_disable_endpoint+0x71/0x80 [usbcore]
Apr 27 00:53:55 polb01 [<e094866e>] driver_disconnect+0x3e/0x40 [usbcore]
Apr 27 00:53:55 polb01 [<e093c0f6>] usb_unbind_interface+0x76/0x80 [usbcore]
Apr 27 00:53:55 polb01 [<c032a0c6>] device_release_driver+0x66/0x70
Apr 27 00:53:55 polb01 [<c032a23d>] bus_remove_device+0x6d/0xb0
Apr 27 00:53:55 polb01 [<c03290be>] device_del+0x6e/0xb0
Apr 27 00:53:55 polb01 [<c0329114>] device_unregister+0x14/0x20
Apr 27 00:53:55 polb01 [<e09446b1>] usb_disable_device+0x71/0xb0 [usbcore]
Apr 27 00:53:55 polb01 [<e093cd26>] usb_disconnect+0xc6/0x120 [usbcore]
Apr 27 00:53:55 polb01 [<e093f88f>] hub_port_connect_change+0x28f/0x2a0 [usbcore]
Apr 27 00:53:55 polb01 [<e093f261>] hub_port_status+0x41/0xb0 [usbcore]
Apr 27 00:53:55 polb01 [<e093fc29>] hub_events+0x389/0x520 [usbcore]
Apr 27 00:53:55 polb01 [<e093fdf5>] hub_thread+0x35/0xf0 [usbcore]
Apr 27 00:53:55 polb01 [<c011af40>] default_wake_function+0x0/0x20
Apr 27 00:53:55 polb01 [<e093fdc0>] hub_thread+0x0/0xf0 [usbcore]
Apr 27 00:53:55 polb01 [<c01032b1>] kernel_thread_helper+0x5/0x14
Apr 27 00:53:55 polb01
Apr 27 00:53:55 polb01 Code: 8b 53 04 8b 03 89 50 04 89 02 89 5b 04 89 1b 81 7e 34 3c 4b
Apr 27 00:53:55 polb01 <6>note: khubd[5612] exited with preempt_count 1
Apr 27 00:53:55 polb01 Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
Apr 27 00:53:55 polb01 in_atomic():1, irqs_disabled():0
Apr 27 00:53:55 polb01 Call Trace:
Apr 27 00:53:55 polb01 [<c011c677>] __might_sleep+0xb7/0xe0
Apr 27 00:53:55 polb01 [<c0121e22>] profile_exit_task+0x22/0x60
Apr 27 00:53:55 polb01 [<c0124399>] do_exit+0x79/0x9c0
Apr 27 00:53:55 polb01 [<c01180a0>] do_page_fault+0x0/0x57e
Apr 27 00:53:55 polb01 [<c01180a0>] do_page_fault+0x0/0x57e
Apr 27 00:53:55 polb01 [<c010638b>] die+0x24b/0x250
Apr 27 00:53:55 polb01 [<c0118296>] do_page_fault+0x1f6/0x57e
Apr 27 00:53:55 polb01 [<c01448fa>] find_get_pages+0x8a/0x190
Apr 27 00:53:55 polb01 [<c011af9a>] __wake_up_common+0x3a/0x60
Apr 27 00:53:55 polb01 [<c02dfd09>] vscnprintf+0x29/0x40
Apr 27 00:53:55 polb01 [<c01211ac>] printk+0x28c/0x400
Apr 27 00:53:55 polb01 [<c01180a0>] do_page_fault+0x0/0x57e
Apr 27 00:53:55 polb01 [<c0105b99>] error_code+0x2d/0x38
Apr 27 00:53:55 polb01 [<e09480b8>] destroy_async+0x88/0x440 [usbcore]
Apr 27 00:53:55 polb01 [<e09445d1>] usb_disable_endpoint+0x71/0x80 [usbcore]
Apr 27 00:53:55 polb01 [<e094866e>] driver_disconnect+0x3e/0x40 [usbcore]
Apr 27 00:53:55 polb01 [<e093c0f6>] usb_unbind_interface+0x76/0x80 [usbcore]
Apr 27 00:53:55 polb01 [<c032a0c6>] device_release_driver+0x66/0x70
Apr 27 00:53:55 polb01 [<c032a23d>] bus_remove_device+0x6d/0xb0
Apr 27 00:53:55 polb01 [<c03290be>] device_del+0x6e/0xb0
Apr 27 00:53:55 polb01 [<c0329114>] device_unregister+0x14/0x20
Apr 27 00:53:55 polb01 [<e09446b1>] usb_disable_device+0x71/0xb0 [usbcore]
Apr 27 00:53:55 polb01 [<e093cd26>] usb_disconnect+0xc6/0x120 [usbcore]
Apr 27 00:53:55 polb01 [<e093f88f>] hub_port_connect_change+0x28f/0x2a0 [usbcore]
Apr 27 00:53:55 polb01 [<e093f261>] hub_port_status+0x41/0xb0 [usbcore]
Apr 27 00:53:55 polb01 [<e093fc29>] hub_events+0x389/0x520 [usbcore]
Apr 27 00:53:55 polb01 [<e093fdf5>] hub_thread+0x35/0xf0 [usbcore]
Apr 27 00:53:55 polb01 [<c011af40>] default_wake_function+0x0/0x20
Apr 27 00:53:55 polb01 [<e093fdc0>] hub_thread+0x0/0xf0 [usbcore]
Apr 27 00:53:55 polb01 [<c01032b1>] kernel_thread_helper+0x5/0x14