From: Tao Cui Document the named-model binding of io.cost.model in the io.cost.model section of the cgroup v2 documentation: the binding and restore syntax, the unknown-name rejection, the full-replacement semantics of a bound model and the unregister lifetime. Signed-off-by: Tao Cui --- Documentation/admin-guide/cgroup-v2.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Documentation/admin-guide/cgroup-v2.rst b/Documentation/admin-guide/cgroup-v2.rst index 8d2603751c51..a6910ad7c2d0 100644 --- a/Documentation/admin-guide/cgroup-v2.rst +++ b/Documentation/admin-guide/cgroup-v2.rst @@ -2124,6 +2124,17 @@ IO Interface Files parameters are written to, "ctrl" become "user" and the automatic changes are disabled. + When CONFIG_BLK_CGROUP_IOCOST_BPF is enabled, "model" also accepts + the name of a registered iocost_model_ops BPF struct_ops model: + "model=" binds the model to the device and the model fully + replaces the builtin linear pricing, for every operation including + flushes; "model=linear" (or "ctrl=auto/user") restores the builtin + model. Writing an unknown name fails with ENOENT. Unregistering + a model removes its name; devices already bound keep using it + until switched back to the builtin model, following the lifetime + model of TCP congestion control. See include/linux/blk-iocost.h + for the model interface. + When "model" is "linear", the following model parameters are defined. -- 2.43.0