Ming Lei wrote:
> On Fri, Jul 19, 2013 at 1:44 AM, Clemens Ladisch <clem...@ladisch.de> wrote:
>> In any case, there must be _some_ mechanism to explicitly restart
>> a stream.  I do not really care if this is some URB flag or some
>> function call.
>
> Thought about the problem further,  looks there is one simple
> approach for detecting underrun in case of empty queue:
>
> if (list_empty (&stream->td_list)) {
>     if (running from hcd interrupt or tasklet context)
>          underrun
>     else
>          new stream
> }

Why shouldn't a driver start a stream in an interrupt/tasklet,
or delay URB resubmission to a workqueue?


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

Reply via email to