nvdimm/btt: always set max_integrity_segments
authorChristoph Hellwig <hch@lst.de>
Wed, 6 Mar 2024 14:27:38 +0000 (07:27 -0700)
committerIra Weiny <ira.weiny@intel.com>
Thu, 25 Apr 2024 19:37:12 +0000 (12:37 -0700)
max_integrity_segments is just a hardware/driver limit and can be safely
set even when integrity data is not supported.  Set it in the initial
queue_limits passed to blk_alloc_disk to simplify the driver.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20240306142739.237234-3-hch@lst.de
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
drivers/nvdimm/btt.c

index 8e855b4e3e383abdd9dc104a60442a3ef8210606..1e5aedaf8c7bd9c3f9426f1bd7852bf5aa13ad44 100644 (file)
@@ -1500,6 +1500,7 @@ static int btt_blk_init(struct btt *btt)
        struct queue_limits lim = {
                .logical_block_size     = btt->sector_size,
                .max_hw_sectors         = UINT_MAX,
+               .max_integrity_segments = 1,
        };
        int rc;
 
@@ -1521,7 +1522,6 @@ static int btt_blk_init(struct btt *btt)
                        .tag_size       = btt_meta_size(btt),
                };
                blk_integrity_register(btt->btt_disk, &bi);
-               blk_queue_max_integrity_segments(btt->btt_disk->queue, 1);
        }
 
        set_capacity(btt->btt_disk, btt->nlba * btt->sector_size >> 9);