USB device fails to enumerate after multiple connect and disconnect in host mode

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

 



In host mode,while continuously connecting and disconnecting a USB
device,sometimes enumeration does not happen(kernel 3.0.31).We see
that the hub_thread is blocked in the schedule() function.The
following is the function trace:

[   34.859924]   task                PC stack   pid father
[   34.865203] khubd           D c05e9cb4     0   420      2 0x00000000
[   34.871704] [<c05e9cb4>] (__schedule+0x3d4/0x934) from [<c05ea388>]
(schedule+0x58/0x70)
[   34.879882] [<c05ea388>] (schedule+0x58/0x70) from [<c034ab70>]
(rpm_resume+0x130/0x50c)
[   34.888031] [<c034ab70>] (rpm_resume+0x130/0x50c) from [<c034acb4>]
(rpm_resume+0x274/0x50c)
[   34.896545] [<c034acb4>] (rpm_resume+0x274/0x50c) from [<c034bc70>]
(__pm_runtime_resume+0x58/0x70)
[   34.905670] [<c034bc70>] (__pm_runtime_resume+0x58/0x70) from
[<c03ae220>] (usb_autopm_get_interface+0x28/0x7c)
[   34.915832] [<c03ae220>] (usb_autopm_get_interface+0x28/0x7c) from
[<c03a6428>] (hub_thread+0x118/0x15bc)
[   34.925506] [<c03a6428>] (hub_thread+0x118/0x15bc) from
[<c00b7af0>] (kthread+0x94/0x9c)
[   34.933685] [<c00b7af0>] (kthread+0x94/0x9c) from [<c005e208>]
(kernel_thread_exit+0x0/0x8)

This happens in the case wherein there is a race condition between the
suspend (following the disconnect) and the resume (on
re-connection).Was a similar issue observed in this kernel? Are there
any patches available?

Also,this issue is not seen on kernel3.4.However ,I require some
suggestions to resolve this issue on kernel3.0.31.

Kindly provide appropriate feedback.
--
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