Hmm, I just found out that my change to libusb is incompatible with kernel versions < 3.3 How exactly Hans de Geode is going to proceed with this issue? I think I saw a couple of emails about this, but I couldn't find the whole thread. > On Tue, 26 Jun 2012 11:47:57 +0400 > Igor Kuzmin <parafin@xxxxxxxxx> wrote: > > > On Mon, 25 Jun 2012 13:26:45 -0700 > > Sarah Sharp <sarah.a.sharp@xxxxxxxxxxxxxxx> wrote: > > > > > On Fri, Jun 22, 2012 at 03:36:53PM +0400, Igor Kuzmin wrote: > > > > Hello! > > > > > > > > I'm software engineer at XIMEA (www.ximea.com) responsible for Linux > > > > support for our products. We're using libusb-1.0 to handle our USB > > > > cameras, everything works very stable with USB2 controllers, not so > > > > good with XHCI (both with USB2 and USB3 devices). > > > > > > Does your libusb driver submit very large transfers? We ran into an > > > issue with libusb making assumptions about the short packet behavior > > > that just isn't true under xHCI. > > > > > > libusb breaks large transfers into smaller buffers because older kernels > > > had a limit on how large each buffer could be. Newer kernels now have a > > > limit on the total size of all mapped usbfs buffers. So libusb would > > > break larger transfers into a couple of usbfs URB submissions, and usbfs > > > would assume that a short packet would stop the queue long enough for it > > > to cancel any URBs that were part of that transfer. But that's not true > > > under xHCI, so your application would see a short transfer completion > > > followed by a canceled URB completion. > > > > > > Basically, libusb just needs to be fixed to not break transfers into > > > smaller chunks. Hans de Geode volunteered to work on this. > > > > Yes, I stumbled into this issue, for the time being we patched libusb, > > so that MAX_BULK_BUFFER_LENGTH is 1MB (that's exactly how big is the > > transfers we submit, so no splitting). Without this change it just > > doesn't work at all (there are some short transfers). Good to hear that > > somebody is working on it, I submitted my patch to libusb's trac, but > > had no response yet. -- 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