linux/drivers/block
Damien Le Moal 3bdde0701e null_blk: Do zone resource management only if necessary
For zoned null_blk devices setup without any limit on the maximum number
of open and active zones, there is no need to count the number of zones
that are implicitly open, explicitly open and closed. This is indicated
by the boolean field need_zone_res_mgmt of sturct nullb_device.

Modify the zone management functions null_reset_zone(),
null_finish_zone(), null_open_zone() and null_close_zone() to manage
the zone condition counters only if the device need_zone_res_mgmt field
is true. With this change, the function __null_close_zone() is removed
and integrated into the 2 caller sites directly, with the
null_close_imp_open_zone() call site greatly simplified as this function
closes zones that are known to be in the implicit open condition.

null_zone_write() is modified in a similar manner to do zone condition
accouting only when the device need_zone_res_mgmt field is true.

With these changes, the inline helpers null_lock_zone_res() and
null_unlock_zone_res() are removed and replaced with direct calls to
spin_lock()/spin_unlock().

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Link: https://lore.kernel.org/r/20240411085502.728558-3-dlemoal@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2024-04-17 08:44:07 -06:00
..
aoe aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts 2024-03-06 08:32:46 -07:00
drbd for-6.9/block-20240310 2024-03-11 11:43:44 -07:00
mtip32xx mtip: pass queue_limits to blk_mq_alloc_disk 2024-02-19 16:59:31 -07:00
null_blk null_blk: Do zone resource management only if necessary 2024-04-17 08:44:07 -06:00
rnbd for-6.9/block-20240310 2024-03-11 11:43:44 -07:00
xen-blkback xen: port block device access to file 2024-02-25 12:05:23 +01:00
zram - Sumanth Korikkar has taught s390 to allocate hotplug-time page frames 2024-03-14 17:43:30 -07:00
amiflop.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00
ataflop.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00
brd.c brd: Remove use of page->index 2024-04-01 11:53:36 -06:00
floppy.c floppy: remove duplicated code in redo_fd_request() 2024-03-18 20:19:56 -06:00
Kconfig block: ublk: switch to ioctl command encoding 2023-04-18 20:13:30 -06:00
loop.c loop: use the atomic queue limits update API 2024-02-13 08:56:59 -07:00
Makefile
n64cart.c n64cart: pass queue_limits to blk_mq_alloc_disk 2024-02-19 16:58:24 -07:00
nbd.c nbd: use the atomic queue limits API in nbd_set_size 2024-03-01 09:08:22 -07:00
pktcdvd.c for-6.9/block-20240310 2024-03-11 11:43:44 -07:00
ps3disk.c ps3disk: pass queue_limits to blk_mq_alloc_disk 2024-02-19 16:59:31 -07:00
ps3vram.c block: pass a queue_limits argument to blk_alloc_disk 2024-02-19 16:58:23 -07:00
rbd_types.h
rbd.c rbd: pass queue_limits to blk_mq_alloc_disk 2024-02-19 16:59:31 -07:00
sunvdc.c - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
swim_asm.S
swim.c block/swim: Convert to platform remove callback returning void 2024-03-08 09:28:04 -07:00
swim3.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00
ublk_drv.c block: Simplify blk_revalidate_disk_zones() interface 2024-04-17 08:44:03 -06:00
virtio_blk.c block: Simplify blk_revalidate_disk_zones() interface 2024-04-17 08:44:03 -06:00
xen-blkfront.c xen-blkfront: atomically update queue limits 2024-02-27 09:33:08 -07:00
z2ram.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00