Linux Documentation
 help / color / mirror / Atom feed
* [PATCH] docs: cgroup-v2: fix stale "io" controller introduction
@ 2026-08-10  6:35 Zhe Liu
  2026-08-10 12:08 ` Tao Cui
  2026-08-10 19:38 ` Tejun Heo
  0 siblings, 2 replies; 3+ messages in thread
From: Zhe Liu @ 2026-08-10  6:35 UTC (permalink / raw)
  To: tj, hannes, mkoutny, corbet, skhan
  Cc: cgroups, linux-doc, linux-kernel, 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.

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
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] docs: cgroup-v2: fix stale "io" controller introduction
  2026-08-10  6:35 [PATCH] docs: cgroup-v2: fix stale "io" controller introduction Zhe Liu
@ 2026-08-10 12:08 ` Tao Cui
  2026-08-10 19:38 ` Tejun Heo
  1 sibling, 0 replies; 3+ messages in thread
From: Tao Cui @ 2026-08-10 12:08 UTC (permalink / raw)
  To: Zhe Liu, tj, hannes, mkoutny, corbet, skhan
  Cc: cui.tao, cgroups, linux-doc, linux-kernel



在 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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] docs: cgroup-v2: fix stale "io" controller introduction
  2026-08-10  6:35 [PATCH] docs: cgroup-v2: fix stale "io" controller introduction Zhe Liu
  2026-08-10 12:08 ` Tao Cui
@ 2026-08-10 19:38 ` Tejun Heo
  1 sibling, 0 replies; 3+ messages in thread
From: Tejun Heo @ 2026-08-10 19:38 UTC (permalink / raw)
  To: Zhe Liu
  Cc: hannes, mkoutny, corbet, skhan, cgroups, linux-doc, linux-kernel,
	Tao Cui

Applied to cgroup/for-7.3 with the cfq removal version in the
description corrected to v5.0 as pointed out by Tao and his Reviewed-by
added.

Thanks.

--
tejun

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-10 19:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-10  6:35 [PATCH] docs: cgroup-v2: fix stale "io" controller introduction Zhe Liu
2026-08-10 12:08 ` Tao Cui
2026-08-10 19:38 ` Tejun Heo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox