[Voyage-linux] USB Crashing On Disconnect

Robert Rawlins - Think Blue (spam-protected)
Fri Oct 2 05:26:11 HKT 2009


Hello Guys,

 

I'm running the latest 0.6.2 build of Voyage on an ALIX 3d2 and we're
experimenting with Huawei e160 and e1550 GSM modems. However I'm having
issues when the modem is disconnected from the system, or when the modem
disconnects itself where it seems to crash the USB sub-system or something.
I've also seen similar behaviour to this with other USB devices in the past
but am unable to test those at the moment.

 

When the device disconnects I get a syslog entry as follows:

 

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1047.773136] usb 2-2: USB disconnect,
address 3

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1047.775001] ehci_hcd 0000:00:0f.5:
HC died; cleaning up

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.777388] irq 15: nobody cared
(try booting with the "irqpoll" option)

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001] Pid: 1501, comm: khubd
Not tainted 2.6.26-486-voyage #1

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c013563b>]
__report_bad_irq+0x24/0x69

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0135642>]
__report_bad_irq+0x2b/0x69

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0135863>]
note_interrupt+0x1e3/0x238

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0134fdb>]
handle_IRQ_event+0x1a/0x3f

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0135ed1>]
handle_level_irq+0x8a/0xce

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0105252>]
do_IRQ+0x4b/0x61

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0103b63>]
common_interrupt+0x23/0x30

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0117f62>]
__do_softirq+0x2c/0x78

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0117fd0>]
do_softirq+0x22/0x26

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c01180e9>]
irq_exit+0x25/0x5d

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0105257>]
do_IRQ+0x50/0x61

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0103b63>]
common_interrupt+0x23/0x30

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c0114bf1>]
vprintk+0x249/0x26a

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<d0848ed8>]
usb_control_msg+0xd2/0xdc [usbcore]

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<c02f42cf>]
printk+0xe/0x17

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<d0845042>]
usb_disconnect+0x44/0xd3 [usbcore]

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778001]  [<d0845ae3>]
hub_thread+0x44b/0xca5 [usbcore]

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<c01102bd>]
__dequeue_entity+0x1f/0x71

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<c0122e6c>]
autoremove_wake_function+0x0/0x2d

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<d0845698>]
hub_thread+0x0/0xca5 [usbcore]

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<c0122ad8>]
kthread+0x36/0x5a

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<c0122aa2>]
kthread+0x0/0x5a

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  [<c0103d17>]
kernel_thread_helper+0x7/0x10

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002]  =======================

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002] handlers:

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002] [<d0846ad7>]
(usb_hcd_irq+0x0/0x59 [usbcore])

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002] [<d0846ad7>]
(usb_hcd_irq+0x0/0x59 [usbcore])

Sep 30 18:17:52 hit-nxdomain vmunix: [ 1050.778002] Disabling IRQ #15

Sep 30 18:19:56 hit-nxdomain pppd[3225]: No response to 4 echo-requests

Sep 30 18:19:56 hit-nxdomain pppd[3225]: Serial link appears to be
disconnected.

Sep 30 18:19:56 hit-nxdomain pppd[3225]: Connect time 18.5 minutes.

Sep 30 18:19:56 hit-nxdomain pppd[3225]: Sent 177782 bytes, received 724070
bytes.

Sep 30 18:19:56 hit-nxdomain pppd[3225]: restoring old default route to eth0
[192.168.1.254]

Sep 30 18:20:02 hit-nxdomain pppd[3225]: Connection terminated.

 

You'll also notice at the bottom a few entries from pppd which was using the
modem at the time it disconnects. I seem to get this same log entry if the
modem disconnects itself (unknown reason) or if I unplug it from the cable.

 

After this I get a pppd running which can't be killed, even using 'kill -9
pid'. The modem is not recognised in syslog when reconnected and commands
like 'lsusb' just seem to hang and show nothing.

 

I've tried booting with the irqpoll noapic nolapic acpi=off boot options but
still seems to get very similar results. It seems at the moment that
power-cylcing the system is the only way to fix it.

 

Can anyone make any suggestions as to what this problem might be and how it
can be solved?

 

Cheers guys, really appreciate your help.

 

Rob

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.voyage.hk/pipermail/voyage-linux/attachments/20091001/8ad621f7/attachment.html>


More information about the Voyage-linux mailing list