On Sat, 30 Jun 2007, Oliver Neukum wrote:
> > It tries to do an awful lot all at once. A good place to start would
> > be to use separate allocation for the Iso packet structures. This
> > could be a simple standalone change.
>
> Here's a patch separating the iso structures. This will allow unification
> of the urb priv structures and the official urb. In addition pools specific
> to hcds can be used.
> Is that what you had in mind?
Yes.
> So do we have consensus for this prototype:
>
> struct urb *usb_alloc_urb(struct usb_host_endpoint *ep, unsigned int
> max_length, unsigned int iso_fields, gfp_t mem_flags);
I don't know; it might be better to omit iso_fields and have a separate
usb_alloc_iso_frames(struct urb *urb, unsigned num_frames,
gfp_t mem_flags)
routine. After all, lots of URBs aren't Iso.
Also, do you intend to set URB_FREE_BUFFER and allocate the transfer
buffer if and only if max_length > 0?
Alan Stern
-------------------------------------------------------------------------
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/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel