Commit 216889aa authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Jens Axboe
Browse files

blk-cgroup: move blk_cgroup_congested out line



There is no urgent need to inline this function, so move it out of line.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Acked-by: default avatarTejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20220420042723.1010598-6-hch@lst.de


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent db056284
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -1950,6 +1950,26 @@ void blk_cgroup_bio_start(struct bio *bio)
	put_cpu();
}

bool blk_cgroup_congested(void)
{
	struct cgroup_subsys_state *css;
	bool ret = false;

	rcu_read_lock();
	css = kthread_blkcg();
	if (!css)
		css = task_css(current, io_cgrp_id);
	while (css) {
		if (atomic_read(&css->cgroup->congestion_count)) {
			ret = true;
			break;
		}
		css = css->parent;
	}
	rcu_read_unlock();
	return ret;
}

static int __init blkcg_init(void)
{
	blkcg_punt_bio_wq = alloc_workqueue("blkcg_punt_bio",
+1 −19
Original line number Diff line number Diff line
@@ -135,25 +135,7 @@ static inline struct blkcg *bio_blkcg(struct bio *bio)
	return NULL;
}

static inline bool blk_cgroup_congested(void)
{
	struct cgroup_subsys_state *css;
	bool ret = false;

	rcu_read_lock();
	css = kthread_blkcg();
	if (!css)
		css = task_css(current, io_cgrp_id);
	while (css) {
		if (atomic_read(&css->cgroup->congestion_count)) {
			ret = true;
			break;
		}
		css = css->parent;
	}
	rcu_read_unlock();
	return ret;
}
bool blk_cgroup_congested(void);

/**
 * blkcg_parent - get the parent of a blkcg