Re: [RFC PATCH 1/2] usb: storage: scsiglue: further describe our 240 sector limit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx> writes:
> Hello.
>
> On 11/4/2015 11:48 PM, Felipe Balbi wrote:
>
>> Just so we have some sort of documentation as to why
>> we limit our Mass Storage transfers to 240 sectors,
>> let's update the comment to make clearer that
>> devices were found that would choke with larger
>> transfers.
>>
>> While at that, also make sure to clarify that other
>> operating systems have similar, albeit different,
>> limits on mass storage transfers.
>>
>> Signed-off-by: Felipe Balbi <balbi@xxxxxx>
>> ---
>>
>> Guys, how about this version ? First we update comments then,
>> as a follow up patch, we increase USB3 only to 2048 sectors.
>>
>>   drivers/usb/storage/scsiglue.c | 18 +++++++++++++++++-
>>   1 file changed, 17 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c
>> index dba51362d2e2..00aadf3a3857 100644
>> --- a/drivers/usb/storage/scsiglue.c
>> +++ b/drivers/usb/storage/scsiglue.c
>> @@ -565,7 +565,23 @@ static const struct scsi_host_template usb_stor_host_template = {
>>   	/* lots of sg segments can be handled */
>>   	.sg_tablesize =			SCSI_MAX_SG_CHAIN_SEGMENTS,
>>
>> -	/* limit the total size of a transfer to 120 KB */
>> +	/*
>> +	 * Limit the total size of a transfer to 120 KB.
>> +	 *
>> +	 * Some devices are known to choke with anything larger. It seems like
>> +	 * the problem stems from the fact that original IDE controllers had
>> +	 * only an 8-bit register to hold the number of sectors in one transfer
>> +	 * and even those couldn't handle a full 256 sectors.
>> +	 *
>> +	 * Because we want to make sure we interoperate with as many devices as
>> +	 * possible, we will maintain a 240 sector transfer size limit for USB
>> +	 * Mass Storage devices.
>> +	 *
>> +	 * Tests show that other operating have similar limits with Microsoft
>
>     Operating systems?

I'll fix this one.

>> +	 * Windows™ 7 limitting transfers to 128 sectors for both USB2 and USB3
>> +	 * and Apple Mac OS X™ 10.11 limitting transfers to 256 sectors for USB2
>
>     Limiting as already noticed.

had fixed this one before, thanks.

-- 
balbi

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux