queue_limits.discard_alignment is never read except in the places
where it is stacked into another limit.

Signed-off-by: Christoph Hellwig <[email protected]>
---
 block/blk-settings.c         | 10 ----------
 drivers/md/dm-cache-target.c |  1 -
 drivers/md/dm-clone-target.c |  1 -
 drivers/md/dm-table.c        |  1 -
 include/linux/blkdev.h       |  1 -
 5 files changed, 14 deletions(-)

diff --git a/block/blk-settings.c b/block/blk-settings.c
index a1b10404e500bc..62588d9a38e39a 100644
--- a/block/blk-settings.c
+++ b/block/blk-settings.c
@@ -578,16 +578,6 @@ int blk_stack_limits(struct queue_limits *t, struct 
queue_limits *b,
        if (b->discard_granularity) {
                alignment = queue_limit_discard_alignment(b, start);
 
-               if (t->discard_granularity != 0 &&
-                   t->discard_alignment != alignment) {
-                       top = t->discard_granularity + t->discard_alignment;
-                       bottom = b->discard_granularity + alignment;
-
-                       /* Verify that top and bottom intervals line up */
-                       if ((max(top, bottom) % min(top, bottom)) != 0)
-                               t->discard_misaligned = 1;
-               }
-
                t->max_discard_sectors = min_not_zero(t->max_discard_sectors,
                                                      b->max_discard_sectors);
                t->max_hw_discard_sectors = 
min_not_zero(t->max_hw_discard_sectors,
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
index 16884b5850532f..2d8dd9283ff4cf 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -3403,7 +3403,6 @@ static void set_discard_limits(struct cache *cache, 
struct queue_limits *limits)
        limits->max_hw_discard_sectors = origin_limits->max_hw_discard_sectors;
        limits->discard_granularity = origin_limits->discard_granularity;
        limits->discard_alignment = origin_limits->discard_alignment;
-       limits->discard_misaligned = origin_limits->discard_misaligned;
 }
 
 static void cache_io_hints(struct dm_target *ti, struct queue_limits *limits)
diff --git a/drivers/md/dm-clone-target.c b/drivers/md/dm-clone-target.c
index ad79b52ffc1434..b4384a8b13e360 100644
--- a/drivers/md/dm-clone-target.c
+++ b/drivers/md/dm-clone-target.c
@@ -2059,7 +2059,6 @@ static void set_discard_limits(struct clone *clone, 
struct queue_limits *limits)
        limits->max_hw_discard_sectors = dest_limits->max_hw_discard_sectors;
        limits->discard_granularity = dest_limits->discard_granularity;
        limits->discard_alignment = dest_limits->discard_alignment;
-       limits->discard_misaligned = dest_limits->discard_misaligned;
        limits->max_discard_segments = dest_limits->max_discard_segments;
 }
 
diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index df6313c3fe6ba4..502ebc78d490f6 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -1808,7 +1808,6 @@ int dm_table_set_restrictions(struct dm_table *t, struct 
request_queue *q,
                limits->max_hw_discard_sectors = 0;
                limits->discard_granularity = 0;
                limits->discard_alignment = 0;
-               limits->discard_misaligned = 0;
        }
 
        if (!dm_table_supports_write_zeroes(t))
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 7ad2b1240fc0bf..86410ce41bf60e 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -377,7 +377,6 @@ struct queue_limits {
        unsigned short          max_integrity_segments;
        unsigned short          max_discard_segments;
 
-       unsigned char           discard_misaligned;
        unsigned char           raid_partial_stripes_expensive;
        unsigned int            max_open_zones;
        unsigned int            max_active_zones;
-- 
2.43.0


Reply via email to