Re: [PATCH v11 3/3] scsi: set max_bio_bytes with queue max sectors

From: Damien Le Moal
Date: Wed Jun 02 2021 - 08:53:21 EST


On 2021/06/02 21:29, Changheun Lee wrote:
> Set max_bio_bytes same with queue max sectors. It will lead to fast bio
> submit when bio size is over than queue max sectors. And it might be helpful
> to align submit bio size in some case.
>
> Signed-off-by: Changheun Lee <nanich.lee@xxxxxxxxxxx>
> ---
> drivers/scsi/scsi_lib.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
> index 532304d42f00..f6269268b0e0 100644
> --- a/drivers/scsi/scsi_lib.c
> +++ b/drivers/scsi/scsi_lib.c
> @@ -1837,6 +1837,8 @@ void __scsi_init_queue(struct Scsi_Host *shost, struct request_queue *q)
> blk_queue_virt_boundary(q, shost->virt_boundary_mask);
> dma_set_max_seg_size(dev, queue_max_segment_size(q));
>
> + blk_queue_max_bio_bytes(q, queue_max_sectors(q));

Doing this unconditionally for all scsi block devices is probably not a good
idea. Cannot this be moved to the LLD handling the devices that actually need it ?

> +
> /*
> * Set a reasonable default alignment: The larger of 32-byte (dword),
> * which is a common minimum for HBAs, and the minimum DMA alignment,
>


--
Damien Le Moal
Western Digital Research