On Wed, Aug 23, 2017 at 04:49:23PM -0700, Shaohua Li wrote:
> From: Shaohua Li <[email protected]>
> 
> Loop can handle any size of request. Limiting it to 255 sectors just
> burns the CPU for bio split and request merge for underlayer disk and
> also cause bad fs block allocation in directio mode.

Reviewed-by: Omar Sandoval <[email protected]>

Note that this will conflict with my loop blocksize series, we can fix
up whichever series goes in second.

> Signed-off-by: Shaohua Li <[email protected]>
> ---
>  drivers/block/loop.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/block/loop.c b/drivers/block/loop.c
> index b55a1f8..428da07 100644
> --- a/drivers/block/loop.c
> +++ b/drivers/block/loop.c
> @@ -1799,6 +1799,7 @@ static int loop_add(struct loop_device **l, int i)
>       }
>       lo->lo_queue->queuedata = lo;
>  
> +     blk_queue_max_hw_sectors(lo->lo_queue, BLK_DEF_MAX_SECTORS);
>       /*
>        * It doesn't make sense to enable merge because the I/O
>        * submitted to backing file is handled page by page.
> -- 
> 2.9.5
> 

Reply via email to