OpenCloudOS-Kernel/drivers/usb/wusbcore
Thomas Pugliese ec58fad1fe wusbcore: fix kernel panic when disconnecting a wireless USB->serial device
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.

Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-08-12 13:45:26 -07:00
..
Kconfig USB: regroup all depends on USB within an if USB block 2013-04-09 16:49:07 -07:00
Makefile usb: makefile cleanup 2010-10-22 10:22:07 -07:00
cbaf.c USB: convert drivers/usb/* to use module_usb_driver() 2011-11-18 09:34:02 -08:00
crypto.c Fix common misspellings 2011-03-31 11:26:23 -03:00
dev-sysfs.c uwb: use dev_dbg() for debug messages 2008-12-22 18:22:50 +00:00
devconnect.c wusbcore: reduce keepalive threshold from timeout/2 to timeout/3 2013-06-06 11:19:27 -07:00
mmc.c USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
pal.c USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
reservation.c USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
rh.c wusbhc: disable suspend and resume on the root hub. 2013-06-06 12:14:38 -07:00
security.c wusb: Fix potential memory leak in wusb_dev_sec_add() 2012-08-10 12:06:38 -07:00
wa-hc.c drivers/usb/wusbcore/wa-hc.c: fix error return code 2012-08-15 15:17:40 -07:00
wa-hc.h trivial: fix typos "man[ae]g?ment" -> "management" 2009-09-21 15:14:56 +02:00
wa-nep.c wusbcore wire adapter: ignore HWA_NOTIF_BPST_ADJ notifications 2013-06-06 13:11:14 -07:00
wa-rpipe.c wusbcore: add sysfs attribute for retry count 2013-06-24 16:19:02 -07:00
wa-xfer.c wusbcore: fix kernel panic when disconnecting a wireless USB->serial device 2013-08-12 13:45:26 -07:00
wusbhc.c USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
wusbhc.h wusbcore: add sysfs attribute for retry count 2013-06-24 16:19:02 -07:00