Merge tag 'for-6.10/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device...
[linux-2.6-block.git] / drivers / md / dm-cache-target.c
index 0fcbf8603846b558dcbf06da828c4c137bc646a8..16884b5850532fb5852f8ceb76e310faed600263 100644 (file)
@@ -3390,8 +3390,8 @@ static void set_discard_limits(struct cache *cache, struct queue_limits *limits)
 
        if (!cache->features.discard_passdown) {
                /* No passdown is done so setting own virtual limits */
-               limits->max_discard_sectors = min_t(sector_t, cache->discard_block_size * 1024,
-                                                   cache->origin_sectors);
+               limits->max_hw_discard_sectors = min_t(sector_t, cache->discard_block_size * 1024,
+                                                      cache->origin_sectors);
                limits->discard_granularity = cache->discard_block_size << SECTOR_SHIFT;
                return;
        }
@@ -3400,7 +3400,6 @@ static void set_discard_limits(struct cache *cache, struct queue_limits *limits)
         * cache_iterate_devices() is stacking both origin and fast device limits
         * but discards aren't passed to fast device, so inherit origin's limits.
         */
-       limits->max_discard_sectors = origin_limits->max_discard_sectors;
        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;