From: Tao Cui <cui.tao@linux.dev>
To: Zhe Liu <liuzhe1@kylinos.cn>,
tj@kernel.org, hannes@cmpxchg.org, mkoutny@suse.com,
corbet@lwn.net, skhan@linuxfoundation.org
Cc: cui.tao@linux.dev, cgroups@vger.kernel.org,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] docs: cgroup-v2: fix stale "io" controller introduction
Date: Mon, 10 Aug 2026 20:08:08 +0800 [thread overview]
Message-ID: <d80029e9-246f-43ca-b719-8a4c834b19ff@linux.dev> (raw)
In-Reply-To: <20260810063535.327765-1-liuzhe1@kylinos.cn>
在 2026/8/10 14:35, Zhe Liu 写道:
> The introductory paragraph for the IO controller still states that
> weight based distribution is "available only if cfq-iosched is in use"
> and that "neither scheme is available for blk-mq devices". This text
> dates from when the cgroup v2 documentation was first written (2015)
> and was correct at the time, but is no longer accurate:
>
> * cfq-iosched was removed in v4.12;
> * blk-mq is now the only block I/O path, and both the absolute limit
> scheme (io.max via blk-throttle) and the weight based scheme
> (io.weight via iocost, or io.bfq.weight under BFQ) work on it;
> * latency based protection (iolatency) and I/O priority (ioprio)
> controllers have since been added.
>
cfq-iosched was removed in v5.0, not v4.12 (f382fb0bcef4, "block:
remove legacy IO schedulers"). v4.12 only added the blk-mq schedulers;
cfq-iosched.c stayed until v5.0.
Otherwise looks good.
Reviewed-by: Tao Cui <cuitao@kylinos.cn>
> The rest of the section already documents io.weight, io.max,
> io.cost.{qos,model}, io.latency and io.prio.class correctly, so the
> introduction is the only part that contradicts them. Rewrite it to
> reflect the current state.
>
> Signed-off-by: Zhe Liu <liuzhe1@kylinos.cn>
> ---
> Documentation/admin-guide/cgroup-v2.rst | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/admin-guide/cgroup-v2.rst b/Documentation/admin-guide/cgroup-v2.rst
> index aed195a71cbf..0fbc7c963807 100644
> --- a/Documentation/admin-guide/cgroup-v2.rst
> +++ b/Documentation/admin-guide/cgroup-v2.rst
> @@ -1984,9 +1984,13 @@ IO
>
> The "io" controller regulates the distribution of IO resources. This
> controller implements both weight based and absolute bandwidth or IOPS
> -limit distribution; however, weight based distribution is available
> -only if cfq-iosched is in use and neither scheme is available for
> -blk-mq devices.
> +limit distribution. Absolute BPS and IOPS limits are enforced by
> +blk-throttle and apply to all devices, while weight based proportional
> +distribution is provided by the iocost cost model controller
> +(CONFIG_BLK_CGROUP_IOCOST) and, when the BFQ I/O scheduler is in use
> +for a device, by BFQ's own cgroup support. Latency-based protection
> +(CONFIG_BLK_CGROUP_IOLATENCY) and I/O priority assignment
> +(CONFIG_BLK_CGROUP_IOPRIO) are also available.
>
>
> IO Interface Files
next prev parent reply other threads:[~2026-08-10 12:09 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-10 6:35 [PATCH] docs: cgroup-v2: fix stale "io" controller introduction Zhe Liu
2026-08-10 12:08 ` Tao Cui [this message]
2026-08-10 19:38 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d80029e9-246f-43ca-b719-8a4c834b19ff@linux.dev \
--to=cui.tao@linux.dev \
--cc=cgroups@vger.kernel.org \
--cc=corbet@lwn.net \
--cc=hannes@cmpxchg.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=liuzhe1@kylinos.cn \
--cc=mkoutny@suse.com \
--cc=skhan@linuxfoundation.org \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox