frees the memory used by a urb when all users of it are finished
void usb_free_urb (
pointer to the urb to free, may be NULL
Must be called when a user of a urb is finished with it. When the last user
of the urb calls this function, the memory of the urb is freed.
The transfer buffer associated with the urb is not freed unless the
URB_FREE_BUFFER transfer flag is set.