linux/drivers/block
Christoph Hellwig 73e3715ed1 block: add special APIs for run-time disabling of discard and friends
A few drivers optimistically try to support discard, write zeroes and
secure erase and disable the features from the I/O completion handler
if the hardware can't support them.  This disable can't be done using
the atomic queue limits API because the I/O completion handlers can't
take sleeping locks or freeze the queue.  Keep the existing clearing
of the relevant field to zero, but replace the old blk_queue_max_*
APIs with new disable APIs that force the value to 0.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Reviewed-by: Nitesh Shetty <nj.shetty@samsung.com>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Link: https://lore.kernel.org/r/20240531074837.1648501-15-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2024-06-14 10:19:44 -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: fix validation of block size 2024-06-05 12:12:54 -06:00
rnbd tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
xen-blkback xen: port block device access to file 2024-02-25 12:05:23 +01:00
zram getting rid of bogus set_blocksize() uses, switching it 2024-05-21 08:34:51 -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: implement discard support 2024-05-13 21:47:51 -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 remove call_{read,write}_iter() functions 2024-04-15 16:03:25 -04:00
Makefile Revert "pktcdvd: remove driver." 2023-01-04 14:44:13 -07:00
n64cart.c n64cart: pass queue_limits to blk_mq_alloc_disk 2024-02-19 16:58:24 -07:00
nbd.c block: take io_opt and io_min into account for max_sectors 2024-06-14 10:19:44 -06:00
pktcdvd.c set_blocksize(): switch to passing struct file * 2024-05-02 17:39:44 -04: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 block: take io_opt and io_min into account for max_sectors 2024-06-14 10:19:44 -06:00
sunvdc.c - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
swim3.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00
swim_asm.S
swim.c block/swim: Convert to platform remove callback returning void 2024-03-08 09:28:04 -07:00
ublk_drv.c ublk_drv: set DMA alignment mask to 3 2024-05-13 17:51:06 -06:00
virtio_blk.c virtio: features, fixes, cleanups 2024-05-23 12:04:36 -07:00
xen-blkfront.c block: add special APIs for run-time disabling of discard and friends 2024-06-14 10:19:44 -06:00
z2ram.c block: pass a queue_limits argument to blk_mq_alloc_disk 2024-02-13 08:56:59 -07:00