On Wed, 10 Jul 2013, Devin Heitmueller wrote: > On Wed, Jul 10, 2013 at 10:58 AM, Devin Heitmueller > <dheitmueller@xxxxxxxxxxxxxx> 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 majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html