On Fri, 9 Aug 2013, Greg KH wrote: > On Fri, Aug 09, 2013 at 09:52:13AM -0500, Thomas Pugliese wrote: > > This patch fixes a kernel panic that can occur when disconnecting a > > wireless USB->serial device. When the serial device disconnects, the > > device cleanup procedure ends up calling usb_hcd_disable_endpoint on the > > serial device's endpoints. The wusbcore uses the ABORT_RPIPE command to > > abort all transfers on the given endpoint but it does not properly give > > back the URBs when the transfer results return from the HWA. This patch > > prevents the transfer result processing code from bailing out when it sees > > a WA_XFER_STATUS_ABORTED result code so that these urbs are flushed > > properly by usb_hcd_disable_endpoint. It also updates wa_urb_dequeue to > > handle the case where the endpoint has already been cleaned up when > > usb_kill_urb is called which is where the panic originally occurred. > > This isn't unique to usb-serial drivers, is it? Or are they the only > ones that happen to trigger this issue? Serial devices are the only ones I have seen which trigger the problem but any device that has a URB pending when the device disconnects could show it. > > Should this go to older kernels as well to solve the problem? > I don't think it is necessary for 3.10.x or older. WUSB support was non-functional to the point that this bug would never be encountered on those kernels. It could be useful for 3.11 though. > thanks, > > greg k-h > -- 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