On Thursday 17 May 2007, David Brownell wrote:
> On Thursday 17 May 2007, Laurent Pinchart wrote:
> > On Wednesday 16 May 2007, David Brownell wrote:
> > > On Wednesday 16 May 2007, Hans Petter Selasky wrote:
> > > > in that when you have
> > > > pre-allocated all buffers and all USB host controller descriptors,
> > > > you will never get in the situation of not being able to allocate
> > > > transfer descriptors on the fly, like done on Linux.
> > >
> > > That's not a failure mode that's been often observed on Linux.  (Never,
> > > in my own experience... which I admit has not focussed on that
> > > particular type of stress load.)  So it's hard to argue that it should
> > > motivate a redesign of core APIs.
> >
> > A user of the Linux UVC driver unfortunately reported such a failure. The
> > driver allocates 5 bulk URBs, and the device asked for a 2.7MB buffer.
>
> Buffer != transfer descriptor.

Ok, sorry for the noise.

> The bug here is asking for a 2.7 MB block of contiguous memory.
> As previously discussed, that's not necessary ... or desirable.
> Drivers asking for such things are buggy -- except possibly on
> dedicated systems.

I'm testing a driver patch to allocate much smaller buffers. I will probably 
run into issues with buggy devices that send a zero packet when the actual 
payload size is equal to the maximum payload size, and is a multiple of the 
packet size, but that's another story.

Laurent Pinchart

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to