summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2022-09-21 20:04:59 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-01-04 11:26:23 +0100
commitc3e8c457a5cf660385eba99377d7d02bf25ea85a (patch)
treefb97412b6485cb92ffe9547864fddefd2931267b
parentbde5fbafe4b07f655077dbd6f563e5ca9fb28ebb (diff)
blk-cgroup: pass a gendisk to blkg_destroy_all
[ Upstream commit 00ad6991bbae116b7c83f68754edd6f4d5e65e01 ] Pass the gendisk to blkg_destroy_all 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-16-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk> Stable-dep-of: 813e693023ba ("blk-iolatency: Fix memory leak on add_disk() failures") Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--block/blk-cgroup.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
index afe802e1180f..cd682fe46d2f 100644
--- a/block/blk-cgroup.c
+++ b/block/blk-cgroup.c
@@ -462,14 +462,9 @@ static void blkg_destroy(struct blkcg_gq *blkg)
percpu_ref_kill(&blkg->refcnt);
}
-/**
- * blkg_destroy_all - destroy all blkgs associated with a request_queue
- * @q: request_queue of interest
- *
- * Destroy all blkgs associated with @q.
- */
-static void blkg_destroy_all(struct request_queue *q)
+static void blkg_destroy_all(struct gendisk *disk)
{
+ struct request_queue *q = disk->queue;
struct blkcg_gq *blkg, *n;
int count = BLKG_DESTROY_BATCH_SIZE;
@@ -1292,7 +1287,7 @@ err_throtl_exit:
err_ioprio_exit:
blk_ioprio_exit(q);
err_destroy_all:
- blkg_destroy_all(q);
+ blkg_destroy_all(disk);
return ret;
err_unlock:
spin_unlock_irq(&q->queue_lock);
@@ -1303,7 +1298,7 @@ err_unlock:
void blkcg_exit_disk(struct gendisk *disk)
{
- blkg_destroy_all(disk->queue);
+ blkg_destroy_all(disk);
blk_throtl_exit(disk);
}