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

From: Frode Isaksen (fisaksen@bewan.com)
Date: Thu Apr 17 2003 - 03:31:18 EST


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:21 EST