From: Christoph Hellwig Date: Wed, 13 Nov 2024 08:45:36 +0000 (+0100) Subject: btrfs: validate queue limits X-Git-Tag: v6.13-rc1~211^2~9 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e559ee022658c70bdc07c4846bf279f5a5abc494;p=thirdparty%2Fkernel%2Flinux.git btrfs: validate queue limits Call blk_validate_limits on the queue limits used for zone append splitting so that calculated values get filled in and any stacking conflicts get cought. Without this there isn't a max_zone_append_sectors limits as of commit 559218d43ec9 ("block: pre-calculate max_zone_append_sectors"). Fixes: 559218d43ec9 ("block: pre-calculate max_zone_append_sectors") Reported-by: Yi Zhang Signed-off-by: Christoph Hellwig Reviewed-by: Johannes Thumshirn Link: https://lore.kernel.org/r/20241113084541.34315-3-hch@lst.de Signed-off-by: Jens Axboe --- diff --git a/fs/btrfs/zoned.c b/fs/btrfs/zoned.c index 46b9386957e6b..64cdae31d3489 100644 --- a/fs/btrfs/zoned.c +++ b/fs/btrfs/zoned.c @@ -711,6 +711,12 @@ int btrfs_check_zoned_mode(struct btrfs_fs_info *fs_info) blk_stack_limits(lim, bdev_limits(device->bdev), 0); } + ret = blk_validate_limits(lim); + if (ret) { + btrfs_err(fs_info, "zoned: failed to validate queue limits"); + return ret; + } + /* * stripe_size is always aligned to BTRFS_STRIPE_LEN in * btrfs_create_chunk(). Since we want stripe_len == zone_size,