summaryrefslogtreecommitdiffstats
path: root/block/blk-core.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2024-02-13 08:34:14 +0100
committerJens Axboe <axboe@kernel.dk>2024-02-13 08:56:59 -0700
commitd690cb8ae14bd377d422b7905b6959c7e7a45b95 (patch)
treec909d6c4f74dfd4c69ba78d57aa8d737d9515cf3 /block/blk-core.c
parentc490f226a0ea22639e81ac34edc884e238ea955a (diff)
downloadlinux-d690cb8ae14bd377d422b7905b6959c7e7a45b95.tar.gz
linux-d690cb8ae14bd377d422b7905b6959c7e7a45b95.tar.bz2
linux-d690cb8ae14bd377d422b7905b6959c7e7a45b95.zip
block: add an API to atomically update queue limits
Add a new queue_limits_{start,commit}_update pair of functions that allows taking an atomic snapshot of queue limits, update it, and commit it if it passes validity checking. Also use the low-level validation helper to implement blk_set_default_limits instead of duplicating the initialization. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Reviewed-by: Hannes Reinecke <hare@suse.de> Link: https://lore.kernel.org/r/20240213073425.1621680-5-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-core.c')
-rw-r--r--block/blk-core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/block/blk-core.c b/block/blk-core.c
index 2b11d8325fde..cb56724a8dfb 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -425,6 +425,7 @@ struct request_queue *blk_alloc_queue(int node_id)
mutex_init(&q->debugfs_mutex);
mutex_init(&q->sysfs_lock);
mutex_init(&q->sysfs_dir_lock);
+ mutex_init(&q->limits_lock);
mutex_init(&q->rq_qos_mutex);
spin_lock_init(&q->queue_lock);