2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-17 01:34:00 +08:00
linux-next/drivers/usb/storage
Gerd Hoffmann c621a81ede Revert "usb/uas: make sure data urb is gone if we receive status before that"
This reverts commit e4d8318a85.

This patch makes uas.c call usb_unlink_urb on data urbs.  The data urbs
get freed in the completion callback.  This is illegal according to the
usb_unlink_urb documentation.

This patch also makes the code expect the data completion callback
being called before the status completion callback.  This isn't
guaranteed to be the case, even though the actual data transfer should
be finished by the time the status is received.

Background:  The ehci irq handler for example only know that there are
finished transfers, it then has go check the QHs & TDs to see which
transfers did actually finish.  It has no way to figure in which order
the transfers did complete.  The xhci driver can call the callbacks in
completion order thanks to the event queue.  This does nicely explain
why the driver is solid on a (usb2) xhci port whereas it goes crazy on
ehci in my testing.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-06-25 11:50:58 -07:00
..
alauda.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
cypress_atacb.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
datafab.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
debug.c
debug.h
ene_ub6250.c usb/storage/ene_ub6250: Remove redundant NULL check before release_firmware() and pointless assignment 2012-04-18 13:52:35 -07:00
freecom.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
initializers.c
initializers.h
isd200.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
jumpshot.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
karma.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
Kconfig Documentation: remove references to /etc/modprobe.conf 2012-03-30 16:03:15 -07:00
libusual.c
Makefile Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 2011-03-16 15:19:35 -07:00
onetouch.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
option_ms.c usb: Add module.h to drivers/usb consumers who really use it. 2011-10-31 19:31:25 -04:00
option_ms.h
protocol.c USB: storage: fixed space issues in coding style. 2012-06-13 15:30:38 -07:00
protocol.h
realtek_cr.c usb/storage: redefine US_BULK_FLAG_IN and use it 2012-02-28 11:07:42 -08:00
scsiglue.c usb-storage: reorganize target-specific code 2012-02-08 17:36:41 -08:00
scsiglue.h
sddr09.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
sddr55.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
shuttle_usbat.c usb: Disable dynamic id of USB storage subdrivers 2012-01-24 14:31:03 -08:00
sierra_ms.c usb: Add module.h to drivers/usb consumers who really use it. 2011-10-31 19:31:25 -04:00
sierra_ms.h
transport.c usb/storage: redefine US_BULK_FLAG_IN and use it 2012-02-28 11:07:42 -08:00
transport.h usb/storage: a couple defines from drivers/usb/storage/transport.h to include/linux/usb/storage.h 2012-02-28 11:05:18 -08:00
uas.c Revert "usb/uas: make sure data urb is gone if we receive status before that" 2012-06-25 11:50:58 -07:00
unusual_alauda.h
unusual_cypress.h USB: usb-storage: unusual_devs update for Cypress ATACB 2011-01-22 18:31:26 -08:00
unusual_datafab.h
unusual_devs.h usb-storage: Add 090c:1000 to unusal-devs 2012-06-13 16:29:58 -07:00
unusual_ene_ub6250.h Staging: Merge ENE UB6250 SD card codes from keucr to drivers/usb/storage 2011-03-07 13:40:59 -08:00
unusual_freecom.h
unusual_isd200.h
unusual_jumpshot.h
unusual_karma.h
unusual_onetouch.h
unusual_realtek.h usb-storage: fix up the unusual_realtek device list 2011-05-17 11:56:28 -07:00
unusual_sddr09.h
unusual_sddr55.h
unusual_usbat.h
usb.c USB: storage: fixed keyword related space issues. 2012-05-17 09:48:29 -07:00
usb.h usb-storage: fix freezing of the scanning thread 2012-02-21 16:29:15 -08:00
usual-tables.c Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 2011-03-16 15:19:35 -07:00