From: Zhang Yi <yi.zh...@huawei.com>

The unmap write zeroes limits have been set to the stacking queue limits
by default in blk_set_stacking_limits() and blk_stack_limits(), but it
should be cleared if any underlying device does not support it.

Signed-off-by: Zhang Yi <yi.zh...@huawei.com>
---
 drivers/md/dm-table.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
index 24a857ff6d0b..d9d5e6aa5707 100644
--- a/drivers/md/dm-table.c
+++ b/drivers/md/dm-table.c
@@ -2065,8 +2065,10 @@ int dm_table_set_restrictions(struct dm_table *t, struct 
request_queue *q,
                limits->discard_alignment = 0;
        }
 
-       if (!dm_table_supports_write_zeroes(t))
+       if (!dm_table_supports_write_zeroes(t)) {
                limits->max_write_zeroes_sectors = 0;
+               limits->max_hw_wzeroes_unmap_sectors = 0;
+       }
 
        if (!dm_table_supports_secure_erase(t))
                limits->max_secure_erase_sectors = 0;
-- 
2.46.1


Reply via email to