blk-iocost: pass a gendisk to blk_iocost_init
authorChristoph Hellwig <hch@lst.de>
Wed, 21 Sep 2022 18:04:54 +0000 (20:04 +0200)
committerJens Axboe <axboe@kernel.dk>
Tue, 27 Sep 2022 01:17:27 +0000 (19:17 -0600)
Pass the gendisk to blk_iocost_init as part of moving the blk-cgroup
infrastructure to be gendisk based.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Andreas Herrmann <aherrmann@suse.de>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20220921180501.1539876-11-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-iocost.c

index d0d9b2d..6fb1c24 100644 (file)
@@ -2828,8 +2828,9 @@ static struct rq_qos_ops ioc_rqos_ops = {
        .exit = ioc_rqos_exit,
 };
 
-static int blk_iocost_init(struct request_queue *q)
+static int blk_iocost_init(struct gendisk *disk)
 {
+       struct request_queue *q = disk->queue;
        struct ioc *ioc;
        struct rq_qos *rqos;
        int i, cpu, ret;
@@ -3178,7 +3179,7 @@ static ssize_t ioc_qos_write(struct kernfs_open_file *of, char *input,
 
        ioc = q_to_ioc(bdev_get_queue(bdev));
        if (!ioc) {
-               ret = blk_iocost_init(bdev_get_queue(bdev));
+               ret = blk_iocost_init(bdev->bd_disk);
                if (ret)
                        goto err;
                ioc = q_to_ioc(bdev_get_queue(bdev));
@@ -3345,7 +3346,7 @@ static ssize_t ioc_cost_model_write(struct kernfs_open_file *of, char *input,
 
        ioc = q_to_ioc(bdev_get_queue(bdev));
        if (!ioc) {
-               ret = blk_iocost_init(bdev_get_queue(bdev));
+               ret = blk_iocost_init(bdev->bd_disk);
                if (ret)
                        goto err;
                ioc = q_to_ioc(bdev_get_queue(bdev));