RE: [Patch] Increase USBFS Bulk Transfer size

Tim Vlaar
2011-11-07T19:26:24Z

Hi Sarah,

One of our cameras can produce 60MB images. We usually queue up 10 images. In Windows we have had customers queue up 100s of images at 2-3MB/image, but not at 60MB at a time ... yet. That could easily amount to 60x10 = 600MB of in flight data or more. Should there be a limit as long as there is memory available?

Thanks
Tim

-----Original Message-----
From: Sarah Sharp [mailto:sarah.a.sharp@linux.intel.com]
Sent: Monday, November 07, 2011 10:53 AM
To: Alan Stern; Tim Vlaar
Cc: Greg KH; Markus Rechberger; Alan Cox; USB list; LKML
Subject: Re: [Patch] Increase USBFS Bulk Transfer size

On Fri, Oct 14, 2011 at 08:33:29AM -0600, Greg KH wrote:
> On Fri, Oct 14, 2011 at 10:05:41AM -0400, Alan Stern wrote:
> > No, a much better approach is to remove all limits on individual
> > transfer sizes and instead have a global limit on the total amount
> > of all usbfs buffers in use at any time. Maybe something like 16
> > MB; at SuperSpeed, that's about about 30 ms worth of data.
>
> That sounds quite reasonable.

Alan, won't this global limit on the usbfs URB buffer size effect userspace drivers that are currently allocating large amounts of buffers, but still respecting individual buffer limit of 16KB? It seems like the patch has the potential to break userspace drivers.

I think that Point Grey's USB 3.0 webcam will be attempting to queue a series of bulk URBs that will be bigger than your 16MB global limit.

Tim, what is the total size of buffers that will be in flight at any one time for your device?

Sarah Sharp