On Fri, Apr 09, 2004 at 03:43:03PM -0400, Alan Stern wrote: > > > Wasn't the whole point of the difference between them that asynchronous > > > usb_unlink_urb() guarantees only the first one whereas synchronous > > > usb_unlink_urb() tries to guarantee both? Unfortunately it only _tries_, > > > it doesn't _guarantee_. > > > > That's not ok. Synchronous usb_unlink_urb() really needs to work > > properly. No "tries", it must. Otherwise drivers have no idea if they > > can reuse the urb or not. That's not acceptable, and needs to get fixed > > as soon as possible. > > This has been the heart of a long discussion between David and me. The > main points coming out of that discussion are:
<good excuses why this isn't so snipped> > Plus maybe a few other things I can't remember right now. The whole thing > is kind of a mess. Ideally I would like to see synchronous unlink go away > entirely, to be replaced by async unlink, wait_for_urb, plus a simple > means of reliably preventing resubmission by completion handlers. Not an > easy thing to do, especially during a stable kernel series. No, we need to make synchronous unlink work properly so that it is simple to use and it works for all host controllers. Right now only uhci is where the problem is, correct? How about fixing this up in that driver and then everyone will be happy. If you need to do your "sleep until we are finished with the urb" hack, that's fine with me. And a fix like that would be welcomed in a stable kernel series. thanks, greg k-h ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
