[RFC PATCH 1/4] USB: HCD: support giveback of URB in tasklet context

Ming Lei ming.lei at canonical.com
Mon Jun 10 05:23:46 EDT 2013


On Mon, Jun 10, 2013 at 4:43 PM, Oliver Neukum <oliver at neukum.org> wrote:
> On Sunday 09 June 2013 23:18:28 Ming Lei wrote:
>> 2), the biggest change is the situation in which usb_submit_urb() is called
>> in complete() callback, so the introduced tasklet schedule delay might be a
>> con, but it shouldn't be a big deal:
>>
>>         - control/bulk asynchronous transfer isn't sensitive to schedule
>>           delay
>
> That is debatable.Missing a frame boundary is expensive because the increased
> latency then translates into lower throughput.

Suppose so, considered that bulk transfer will do large data block transfer, and
the extra frame or uFrame doesn't matter over the whole transfer time.

Also the tasklet function will be scheduled once the hard interrupt handler
completes, and the delay is often several microseconds or smaller, which
has a very low probability to miss frame/uframe boundary.

Even with submitting URBs in hardware interrupt handler, there is still the
interrupt handling delay, isn't there? (So disabling interrupt too
long is really
very bad, :-))

Thanks,
--
Ming Lei



More information about the linux-arm-kernel mailing list