Re: How should we handle isochronous underruns?

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

 



On Mon, 1 Jul 2013, Pratyush Anand wrote:

> On 6/30/2013 8:32 PM, Alan Stern wrote:
> > There are several possible things the HCD could do when an underrun
> > occurs:
> 
> I do not have much experience in working with ISOC host.But by the 
> experience of device side I can say that, There could be problem 
> irrespective of tasklet or irq context, only that tasklet would be more 
> prone to it. Should not we have same approach in handling isoc packet in 
> either of the cases?

Of course we should.

> > 	It could schedule the URB for the first time slot known to be
> > 	available, even if that means skipping some time slots which
> > 	the hardware might (or might not) be able to use.
> >
> 
> IMO, this approach is better. But, what should we call as "first time 
> slot known to be available". Current code calculates it as now (current 
> time slot) + delta microframe, and delta is kept as fixed. However, 
> different system works with different values of delta. IMO, This delta 
> should be dynamic and software should update it on the basis of initial 
> value and feedback (past failure/missed isoc experience).

Clemens disagrees, and I accept his recommendation.

> > 	It could try to schedule the URB for the next time slot after
> > 	the last one used by the preceding URB, even if that time slot
> > 	has already expired.
> >
> 
> There is no meaning of submitting an URB for expired time slot. In 
> anyway, it is not going to be transferred and will further result in 
> under-run/missed packet.

That is not true.  For example, suppose 2 time slots have already 
expired, but the submitted URB contains 5 packets.  Even though it's 
too late for the first two packets, the last three can still be 
transferred.

Alan Stern

--
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