Back in 2015, commit d2be537c3ba3 ("block: bump BLK_DEF_MAX_SECTORS to 2560") increased the default maximum size of a block device I/O to 2560 sectors (1280 KiB) to "accommodate a 10-data-disk stripe write with chunk size 128k". This choice is rather arbitrary and since then, improvements to the block layer have software RAID drivers correctly advertize their stripe width through chunk_sectors and abuses of BLK_DEF_MAX_SECTORS_CAP by drivers (to set the HW limit rather than the default user controlled maximum I/O size) have been fixed. Since many block devices can benefit from a larger value of BLK_DEF_MAX_SECTORS_CAP, and in particular HDDs, increase this value to be 4MiB, or 8192 sectors. Suggested-by: Martin K . Petersen <martin.petersen@xxxxxxxxxx> Signed-off-by: Damien Le Moal <dlemoal@xxxxxxxxxx> --- include/linux/blkdev.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 85aab8bc96e7..7c35b2462048 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -1238,7 +1238,7 @@ enum blk_default_limits { * Not to be confused with the max_hw_sector limit that is entirely * controlled by the driver, usually based on hardware limits. */ -#define BLK_DEF_MAX_SECTORS_CAP 2560u +#define BLK_DEF_MAX_SECTORS_CAP 8192u static inline struct queue_limits *bdev_limits(struct block_device *bdev) { -- 2.49.0