--- 1.139/include/linux/usb.h Wed May 7 00:02:43 2003 +++ edited/include/linux/usb.h Thu May 8 20:06:31 2003 @@ -511,6 +511,8 @@ /** * struct urb - USB Request Block * @urb_list: For use by current owner of the URB. + * @dev_list: For use by device driver, even while the URB is owned by + * usbcore and the HCD. Th device driver must initialize this list. * @pipe: Holds endpoint number, direction, type, and more. * Create these values with the eight macros available; * usb_{snd,rcv}TYPEpipe(dev,endpoint), where the type is "ctrl" @@ -669,7 +671,8 @@ spinlock_t lock; /* lock for the URB */ atomic_t count; /* reference count of the URB */ void *hcpriv; /* private data for host controller */ - struct list_head urb_list; /* list pointer to all active urbs */ + struct list_head urb_list; /* private data for usbcore */ + struct list_head dev_list; /* private data for device driver */ struct usb_device *dev; /* (in) pointer to associated device */ unsigned int pipe; /* (in) pipe information */ int status; /* (return) non-ISO status */