On Sat, Sep 4, 2010 at 3:38 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > Not so. The USB audio driver does this. It allocates a coherent > buffer and then logically divides the buffer up into multiple pieces, > each of which gets used with its own URB. > Ok so I see, thanks for pointing this out. > > Why would a driver want to sync the buffers manually when usbcore > already takes care of all that? Besides, manual syncing won't mix with > usbmon. > However Documentation/usb/dma.txt says: - Some drivers may prefer to work with the model that they're mapping large buffers, synchronizing their safe re-use. (If there's no re-use, then let usbcore do the map/unmap.) Large periodic transfers make good examples here, since it's cheaper to just synchronize the buffer than to unmap it each time an urb completes and then re-map it on during resubmission. Is this out of date then? > Why go out of your way to create complexity? Just assume that > driver-managed mappings must always be coherent. > That's fine by me. I certainly have no desire to create complexity. Regards, Martin -- 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