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/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel