On Wed, 10 Jul 2013, Devin Heitmueller wrote:

> On Wed, Jul 10, 2013 at 10:58 AM, Devin Heitmueller
> <dheitmuel...@kernellabs.com> wrote:
> >> I bet the problem is related to the usage of the URB_ISO_ASAP flag.
> >> em28xx_alloc_urbs() sets URB_ISO_ASAP in urb->transfer_flags, and the
> >> value never gets cleared.  In fact, that flag bit is supposed to be set
> >> only in the first URB of a stream, not in the following URBs.  (The
> >> same mistake is present for the URBs in the audio stream.)
> >
> > Wow, REALLY?  Ok, if that's the case then I will fix that and see if
> > it makes any difference.
> 
> Nope, that wasn't it.  I am now only setting ISO_ASAP in the first
> packet, and I tried both leaving it as in on resubmit and clearing the
> flag prior to resubmit.

usbmon is the best debugging tool at this point.

> In retrospect, it seems a bit strange that if that were the problem
> the behavior would have changed when introducing system load.

It's possible that increasing the system load can cause resubmissions 
to be delayed for too long.

> Regardless, I'm happy to fix any conformance issues you see with the
> driver (even if they don't fix the problem at hand).

For now, let's just try to find the source of the problem.  :-)

Alan Stern

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