On Wed, Mar 06 2024 at 9:27P -0500, Christoph Hellwig <hch@xxxxxx> wrote: > Set max_integrity_segments with the other queue limits instead > of updating it later. This also uncovered that the driver is trying > to set the limit to UINT_MAX while max_integrity_segments is an > unsigned short, so fix it up to use USHRT_MAX instead. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > drivers/md/dm-integrity.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/md/dm-integrity.c b/drivers/md/dm-integrity.c > index c5f03aab455256..a2e5cfe84565ae 100644 > --- a/drivers/md/dm-integrity.c > +++ b/drivers/md/dm-integrity.c > @@ -3419,6 +3419,7 @@ static void dm_integrity_io_hints(struct dm_target *ti, struct queue_limits *lim > blk_limits_io_min(limits, ic->sectors_per_block << SECTOR_SHIFT); > limits->dma_alignment = limits->logical_block_size - 1; > } > + limits->max_integrity_segments = USHRT_MAX; > } > > static void calculate_journal_section_size(struct dm_integrity_c *ic) > @@ -3586,7 +3587,6 @@ static void dm_integrity_set(struct dm_target *ti, struct dm_integrity_c *ic) > bi.interval_exp = ic->sb->log2_sectors_per_block + SECTOR_SHIFT; > > blk_integrity_register(disk, &bi); > - blk_queue_max_integrity_segments(disk->queue, UINT_MAX); > } > > static void dm_integrity_free_page_list(struct page_list *pl) > -- > 2.39.2 > I've picked this up for 6.9: https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=dm-6.9&id=f30e5ed1306be8a900b33317bc429dd3794d81a1 Thanks.