30 lines
1.1 KiB
Diff
30 lines
1.1 KiB
Diff
From: Hans de Goede <hdegoede@redhat.com>
|
|
Date: Fri, 04 Mar 2016 07:18:00 +0000
|
|
Subject: uas: Fix high-order alloc
|
|
Origin: http://thread.gmane.org/gmane.linux.usb.general/138042/focus=111495
|
|
|
|
Can you try building a kernel with the following line in drivers/usb/storage/uas.c :
|
|
|
|
.can_queue = 65536, /* Is there a limit on the _host_ ? */
|
|
|
|
(around line 815) Replaced with
|
|
|
|
.can_queue = MAX_CMNDS,
|
|
|
|
That should help as MAX_CMNDS is 256, so claiming that we can queue more
|
|
is not helpful, and that likely is what is causing this quite high order alloc.
|
|
|
|
Reported-and-tested-by: Yves-Alexis Perez <corsac@corsac.net>
|
|
---
|
|
--- a/drivers/usb/storage/uas.c
|
|
+++ b/drivers/usb/storage/uas.c
|
|
@@ -812,7 +812,7 @@ static struct scsi_host_template uas_hos
|
|
.slave_configure = uas_slave_configure,
|
|
.eh_abort_handler = uas_eh_abort_handler,
|
|
.eh_bus_reset_handler = uas_eh_bus_reset_handler,
|
|
- .can_queue = 65536, /* Is there a limit on the _host_ ? */
|
|
+ .can_queue = MAX_CMNDS, /* Is there a limit on the _host_ ? */
|
|
.this_id = -1,
|
|
.sg_tablesize = SG_NONE,
|
|
.skip_settle_delay = 1,
|