On Wed, 25 Jun 2003, Johannes Erdfelt wrote: > I think your analysis is right on target. > > I think your proposed fix is correct, but the implementation will be > tricky. We store TDs in the URB because the TDs for Interrupt and > Isochronous URBs don't have a QH. There's no reason we can't use a QH > for those cases howeever and it might be a good idea to do that so we > can make the code generic. > > That will require some rework of the code. > > I'll spend some more time thinking about it and see if there is an > easier way.
Maybe have another list, of urb_priv structures waiting to be destroyed. (You could even re-use the complete_list field for this.) Then have a subroutine called from uhci_irq() do the equivalent of uhci_destory_urb_priv() for each urb_priv on the list during the next interrupt, instead of doing it within uhci_finish_urb(). That should involve many fewer changes. Alan Stern ------------------------------------------------------- This SF.Net email is sponsored by: INetU Attention Web Developers & Consultants: Become An INetU Hosting Partner. Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission! INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel