On Mon, Oct 31, 2022 at 10:08 PM Xiao Ni <xni@xxxxxxxxxx> wrote: Please update the subject as md/raid0, raid10: xxx. > > It should use disk_stack_limits to get a proper max_discard_sectors > rather than setting a value by stack drivers. > > And there is a bug. If all member disks are rotational devices, > raid0/raid10 set max_discard_sectors. So the member devices are > not ssd/nvme, but raid0/raid10 export the wrong value. It reports > warning messages in function __blkdev_issue_discard when mkfs.xfs Please provide more information about this bug: the warning message, the impact, etc. in the commit log. > > Signed-off-by: Xiao Ni <xni@xxxxxxxxxx> > Reported-by: Yi Zhang <yi.zhang@xxxxxxxxxx> Thanks, Song > --- > drivers/md/raid0.c | 1 - > drivers/md/raid10.c | 2 -- > 2 files changed, 3 deletions(-) > > diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c > index aced0ad8cdab..9d4831ca802c 100644 > --- a/drivers/md/raid0.c > +++ b/drivers/md/raid0.c > @@ -398,7 +398,6 @@ static int raid0_run(struct mddev *mddev) > > blk_queue_max_hw_sectors(mddev->queue, mddev->chunk_sectors); > blk_queue_max_write_zeroes_sectors(mddev->queue, mddev->chunk_sectors); > - blk_queue_max_discard_sectors(mddev->queue, UINT_MAX); > > blk_queue_io_min(mddev->queue, mddev->chunk_sectors << 9); > blk_queue_io_opt(mddev->queue, > diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c > index 3aa8b6e11d58..9a6503f5cb98 100644 > --- a/drivers/md/raid10.c > +++ b/drivers/md/raid10.c > @@ -4145,8 +4145,6 @@ static int raid10_run(struct mddev *mddev) > conf->thread = NULL; > > if (mddev->queue) { > - blk_queue_max_discard_sectors(mddev->queue, > - UINT_MAX); > blk_queue_max_write_zeroes_sectors(mddev->queue, 0); > blk_queue_io_min(mddev->queue, mddev->chunk_sectors << 9); > raid10_set_io_opt(conf); > -- > 2.32.0 (Apple Git-132) >