USB driver hangs up on data transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'm working on a PXA320 board. I have linux kernel 2.6.25 runnung on
it. I have a problem with my USB driver. Whenever I mount it and try
to do any kind of data transfer (say about even 12 - 16K) the driver
gives me the following dump:

<3>BUG: scheduling while atomic: usb-storage/753/0x00000002
[ 3221.785285] [<c0028454>] (dump_stack+0x0/0x14) from [<c00372c0>]
(__schedule_bug+0x50/0x5c)
[ 3221.795901] [<c0037270>] (__schedule_bug+0x0/0x5c) from
[<c0267354>] (schedule+0x2dc/0x348)
[ 3221.803652]  r4:00000000
[ 3221.806167] [<c0267078>] (schedule+0x0/0x348) from [<bf038a84>]
(oxu_urb_enqueue+0xb8/0x1a4 [oxu210hp_hcd])
[ 3221.817296] [<bf0389cc>] (oxu_urb_enqueue+0x0/0x1a4 [oxu210hp_hcd])
from [<bf0067dc>] (usb_hcd_submit_urb+0x2f8/0xac0 [usbcore])
[ 3221.829174] [<bf0064e4>] (usb_hcd_submit_urb+0x0/0xac0 [usbcore])
from [<bf007230>] (usb_submit_urb+0x148/0x32c [usbcore])
[ 3221.840012] [<bf0070e8>] (usb_submit_urb+0x0/0x32c [usbcore]) from
[<bf009100>] (usb_sg_wait+0x74/0x21c [usbcore])
[ 3221.850013]  r8:00000008 r7:00000000 r6:ce99e000 r5:00000020 r4:cf7c9ab4
[ 3221.856692] [<bf00908c>] (usb_sg_wait+0x0/0x21c [usbcore]) from
[<bf024478>] (usb_stor_bulk_transfer_sglist+0x98/0x120 [usb_storage])
[ 3221.869639] [<bf0243e0>] (usb_stor_bulk_transfer_sglist+0x0/0x120
[usb_storage]) from [<bf024594>] (usb_stor_bulk_srb+0x30/0x48
[usb_storage])
[ 3221.880012] [<bf024564>] (usb_stor_bulk_srb+0x0/0x48 [usb_storage])
from [<bf0246c0>] (usb_stor_Bulk_transport+0x114/0x278 [usb_storage])
[ 3221.894608]  r4:cff85c8f
[ 3221.897122] [<bf0245ac>] (usb_stor_Bulk_transport+0x0/0x278
[usb_storage]) from [<bf024b48>] (usb_stor_invoke_transport+0x28/0x2dc
[usb_storage])
[ 3221.910012] [<bf024b20>] (usb_stor_invoke_transport+0x0/0x2dc
[usb_storage]) from [<bf023adc>]
(usb_stor_transparent_scsi_command+0x10/0x14 [usb_storage])
[ 3221.920012] [<bf023acc>]
(usb_stor_transparent_scsi_command+0x0/0x14 [usb_storage]) from
[<bf025518>] (usb_stor_control_thread+0x264/0x2f0 [usb_storage])
[ 3221.936167] [<bf0252b4>] (usb_stor_control_thread+0x0/0x2f0
[usb_storage]) from [<c0052dd4>] (kthread+0x50/0x7c)
[ 3221.947727]  r7:00000000 r6:00000000 r5:bf0252b4 r4:cf7c9a54
[ 3221.953307] [<c0052d84>] (kthread+0x0/0x7c) from [<c003fc44>]
(do_exit+0x0/0x74c)
[ 3221.960039]  r5:00000000 r4:00000000
[ 3221.963595]

Then the driver resets and the initial handshake takes place properly,
but later it again produces this dump leading eventually to hang up of
the entire board. Because the error was occurring at irregular
intervals, I thought the problem might be regarding the MSC register
values, but even those when set to the slowest did not help. I have
also tried USBMon and the logs don't suggest anything much different.

If anyone has any inclination towards what the problem could be, that
could be really useful.

Thanks in advance,

Saurabh
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux