On Tue, 12 Apr 2011, Dmitry Torokhov wrote: > Currently, when resetting a device, xHCI driver disables all but one > endpoints and frees their rings, but leaves alone any streams that > might have been allocated. Later, when users try to free allocated > streams, we oops in xhci_setup_no_streams_ep_input_ctx() because > ep->ring is NULL. > > Let's free not only rings but also stream data as well, so that > calling free_streams() on a device that was reset will be safe. What happens when the driver that allocated the streams initially wants to use them after the reset? Is this driver supposed to be responsible for re-allocating the streams in its post_reset method? Wouldn't it make more sense to keep the streams around or automatically re-allocate them? Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html