Re: [PATCH v3] scsi: ufs: Increase the maximum data buffer size

Bart Van Assche
2022-08-03T16:23:17Z

On 8/2/22 16:40, yohan.joung@sk.com wrote:
> Is it possible by adding only max_sector to increase the data buffer size?

Yes.

> I think the data buffer will split to 512 KiB, because the sg_table size is SG_ALL

I don't think so. With this patch applied, the limits supported by the
UFS driver are as follows:

.sg_tablesize = SG_ALL, /* 128 */
.max_segment_size = PRDT_DATA_BYTE_COUNT_MAX, /* 256 KiB*/
.max_sectors = (1 << 20) / SECTOR_SIZE, /* 1 MiB */

So the maximum data buffer size is min(max_sectors * 512, sg_tablesize *
max_segment_size) = min(1 MiB, 128 * 256 KiB) = 1 MiB. On a system with
4 KiB pages, the data buffer size will be 128 * 4 KiB = 512 MiB if none
of the pages involved in the I/O are contiguous.

Bart.