This eliminates an error case (current cost, memleak) when disabling endpoints that have control requests queued.
Please merge.
- Dave
--- 1.70/drivers/usb/core/hcd.c Fri Jul 25 06:48:06 2003 +++ edited/drivers/usb/core/hcd.c Tue Aug 5 16:46:38 2003 @@ -1307,7 +1307,8 @@ /* ignore urbs for other endpoints */ if (usb_pipeendpoint (tmp) != epnum) continue; - if ((tmp ^ endpoint) & USB_DIR_IN) + /* NOTE assumption that only ep0 is a control endpoint */ + if (epnum != 0 && ((tmp ^ endpoint) & USB_DIR_IN)) continue; /* another cpu may be in hcd, spinning on hcd_data_lock