Re: PATCH: usb-uhci: interrupt out with urb->interval 0

From: David Glance (david@csse.uwa.edu.au)
Date: Sun Apr 20 2003 - 08:32:43 EST


The timeout problem is solved (I increased the timeout on my side) - so
just to confirm that the patch is still required though.

David Glance wrote:

> I am not subscribed to this list - please include me on the 'cc' line.
>
> Version: 2.4.21-pre6
> Subsystem: USB
> Driver: Lego USB Tower
>
> Writing one-short interrupt out transfers without this patch cause the
> system to hang. Applying this patch fixes that (thankfully after
> fsck'ing my disk a dozen times!) - however the driver (which works
> still using usb-ohci on an ohci card) - doesn't work because the reads
> are failing - returning a ETIMEDOUT.
>
> I am assuming that the changes made (see below) - somehow have
> affected other aspects of one-shot interrupt in transfers?
>
> Thanks
>
> David
>
>
> Frode wrote:
>
> A recent change (2.4.21) in the usb-uhci driver calls
> "uhci_clean_iso_step2" after the completion of one-shot (urb->interval
> 0) interrupt out transfers. This call clears the list of descriptors.
> However, it crashes when trying to get the next desciptor in the "for"
> loop in the "process_interrupt" function, since the list of descriptors
> are already cleared. A simple change I did was to do a "break" to quit
> the "for" loop for interrupt out transfers with urb->interval 0.
>
> Thanks,
> Frode
>
> --- drivers/usb/usb-uhci.c.orig 2003-04-16 15:39:04.000000000 +0200
> +++ drivers/usb/usb-uhci.c 2003-04-16 15:39:56.000000000 +0200
> @@ -2628,6 +2628,7 @@
> // correct toggle after unlink
> usb_dotoggle (urb->dev,
> usb_pipeendpoint (urb->pipe), usb_pipeout
> (urb->pipe));
> clr_td_ioc(desc); // inactivate TD
> + break;
> }
> }
> }
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Apr 23 2003 - 22:00:27 EST