Patch "USB: uas: Limit qdepth at the scsi-host level" has been added to the 4.4-stable tree
Subsystems (4)
This is a note to let you know that I've just added the patch titled
USB: uas: Limit qdepth at the scsi-host level
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
usb-uas-limit-qdepth-at-the-scsi-host-level.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
198de51dbc3454d95b015ca0a055b673f85f01bbMon Sep 17 00:00:00 2001
From: Hans de Goede <[email protected]>
Date: Tue, 12 Apr 2016 12:27:08 +0200
Subject: USB: uas: Limit qdepth at the scsi-host level
From: Hans de Goede <[email protected]>
commit 198de51dbc3454d95b015ca0a055b673f85f01bb upstream.
Commit 64d513ac31bd ("scsi: use host wide tags by default") causes the SCSI core to queue more commands then we can handle on devices with multiple LUNs, limit the queue depth at the scsi-host level instead of per slave to fix this.
--- drivers/usb/storage/uas.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
drivers/usb/storage/uas.c +6 -1
@@ -800,7 +800,6 @@ static int uas_slave_configure(struct scif (devinfo->flags &US_FL_BROKEN_FUA ) sdev->broken_fua =1 ; -scsi_change_queue_depth (sdev, devinfo->qdepth -2 );return 0 ; }
@@ -932,6 +931,12 @@ static int uas_probe(struct usb_interfacif (result) goto set_alt0; +/* +* 1 tag is reserved for untagged commands + +* 1 tag to avoid off by one errors in some bridge firmwares +*/ + shost->can_queue = devinfo->qdepth -2 ; +usb_set_intfdata (intf, shost); result =scsi_add_host (shost, &intf->dev);if (result)
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/usb-uas-limit-qdepth-at-the-scsi-host-level.patch queue-4.4/usb-uas-add-a-new-no_report_luns-quirk.patch queue-4.4/pinctrl-sunxi-fix-a33-external-interrupts-not-working.patch