Commit bf20ab53 authored by Yu Kuai's avatar Yu Kuai Committed by Jens Axboe
Browse files

blk-throttle: remove CONFIG_BLK_DEV_THROTTLING_LOW



One the one hand, it's marked EXPERIMENTAL since 2017, and looks like
there are no users since then, and no testers and no developers, it's
just not active at all.

On the other hand, even if the config is disabled, there are still many
fields in throtl_grp and throtl_data and many functions that are only
used for throtl low.

At last, currently blk-throtl is initialized during disk initialization,
and destroyed during disk removal, and it exposes many functions to be
called directly from block layer.

Remove throtl low to make code much more cleaner and follow up work much
easier.

Signed-off-by: default avatarYu Kuai <yukuai3@huawei.com>
Acked-by: default avatarTejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20240509121107.3195568-2-yukuai1@huaweicloud.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 7be83569
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -594,18 +594,6 @@ Description:
		the data.  If no such restriction exists, this file will contain
		'0'.  This file is writable for testing purposes.


What:		/sys/block/<disk>/queue/throttle_sample_time
Date:		March 2017
Contact:	linux-block@vger.kernel.org
Description:
		[RW] This is the time window that blk-throttle samples data, in
		millisecond.  blk-throttle makes decision based on the
		samplings. Lower time means cgroups have more smooth throughput,
		but higher CPU overhead. This exists only when
		CONFIG_BLK_DEV_THROTTLING_LOW is enabled.


What:		/sys/block/<disk>/queue/virt_boundary_mask
Date:		April 2021
Contact:	linux-block@vger.kernel.org
+0 −1
Original line number Diff line number Diff line
@@ -76,7 +76,6 @@ CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_BLK_DEV_ZONED=y
CONFIG_BLK_DEV_THROTTLING=y
CONFIG_BLK_DEV_THROTTLING_LOW=y
CONFIG_BLK_WBT=y
CONFIG_BLK_CGROUP_IOLATENCY=y
CONFIG_BLK_CGROUP_FC_APPID=y
+0 −11
Original line number Diff line number Diff line
@@ -119,17 +119,6 @@ config BLK_DEV_THROTTLING

	See Documentation/admin-guide/cgroup-v1/blkio-controller.rst for more information.

config BLK_DEV_THROTTLING_LOW
	bool "Block throttling .low limit interface support (EXPERIMENTAL)"
	depends on BLK_DEV_THROTTLING
	help
	Add .low limit interface for block throttling. The low limit is a best
	effort limit to prioritize cgroups. Depending on the setting, the limit
	can be used to protect cgroups in terms of bandwidth/iops and better
	utilize disk resource.

	Note, this is an experimental interface and could be changed someday.

config BLK_WBT
	bool "Enable support for block device writeback throttling"
	help
+0 −1
Original line number Diff line number Diff line
@@ -1629,7 +1629,6 @@ void bio_endio(struct bio *bio)
		goto again;
	}

	blk_throtl_bio_endio(bio);
	/* release cgroup info */
	bio_uninit(bio);
	if (bio->bi_end_io)
+0 −3
Original line number Diff line number Diff line
@@ -57,9 +57,6 @@ void blk_stat_add(struct request *rq, u64 now)

	value = (now >= rq->io_start_time_ns) ? now - rq->io_start_time_ns : 0;

	if (req_op(rq) == REQ_OP_READ || req_op(rq) == REQ_OP_WRITE)
		blk_throtl_stat_add(rq, value);

	rcu_read_lock();
	cpu = get_cpu();
	list_for_each_entry_rcu(cb, &q->stats->callbacks, list) {
Loading