Hi, This patch make the usb_unlink_urb() behave like the usb-ohci and usb-uhci controllers, so that it returns -EINPROGRESS with asynchronous URBs. I originally submitted this patch during the 2.4.21-pre series, in the hope that it would make its way into 2.4.22. However, it doesn't seem to have been included yet. Is it too late, or is there a problem with the patch?
Cheers, Chris --- linux-2.4.21/drivers/usb/host/uhci.c.orig Fri Jun 13 21:20:37 2003 +++ linux-2.4.21/drivers/usb/host/uhci.c Fri Jun 13 21:22:10 2003 @@ -1741,6 +1741,7 @@ struct uhci *uhci; unsigned long flags; struct urb_priv *urbp = urb->hcpriv; + int ret; if (!urb) return -EINVAL; @@ -1778,6 +1779,8 @@ uhci_unlink_generic(uhci, urb); + ret = 0; + /* Short circuit the virtual root hub */ if (urb->dev == uhci->rh.dev) { rh_unlink_urb(urb); @@ -1802,6 +1805,7 @@ spin_unlock(&urb->lock); spin_unlock_irqrestore(&uhci->urb_list_lock, flags); + ret = -EINPROGRESS; } else { urb->status = -ENOENT; @@ -1822,7 +1826,7 @@ } } - return 0; + return ret; } static int uhci_fsbr_timeout(struct uhci *uhci, struct urb *urb) ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel