On Tue, Jun 17, 2025 at 03:34:30PM +0900, Damien Le Moal wrote: > 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 The change itself looks good, but the definition should belong to block layer internal, so why not move it into internal header? thanks, Ming