]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
virtio_blk: Do not use disk_set_max_open/active_zones()
authorDamien Le Moal <dlemoal@kernel.org>
Fri, 1 Mar 2024 19:26:37 +0000 (04:26 +0900)
committerJens Axboe <axboe@kernel.dk>
Wed, 6 Mar 2024 15:33:58 +0000 (08:33 -0700)
commit0e46064ebebb90b02c53283106f26600aa38c986
treec95de1f2d62301ca8785ae7ffdaba2ae41e99bed
parentf98364e926626c678fb4b9004b75cacf92ff0662
virtio_blk: Do not use disk_set_max_open/active_zones()

In virtblk_read_zoned_limits(), setting a zoned block device maximum
number of open and active zones using the functions
disk_set_max_open_zones() and disk_set_max_active_zones() is incorrect
as setting the limits for the request queue is now done atomically when
the gendisk is created (with blk_mq_alloc_disk()). The value set by the
disk_set_max_open/active_zones() functions will be overwritten.
Fix this by setting the maximum number of open and active zones directly
in the queue_limits structure passed to virtblk_read_zoned_limits().

Fixes: 8b837256560c ("virtio_blk: pass queue_limits to blk_mq_alloc_disk")
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20240301192639.410183-2-dlemoal@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/virtio_blk.c