Re: [PATCH 08/10] blkcg: implement blk-iocost

From: Michal Koutný
Date: Tue Sep 10 2019 - 08:55:24 EST


Hello.

On Wed, Aug 28, 2019 at 03:05:58PM -0700, Tejun Heo <tj@xxxxxxxxxx> wrote:
> diff --git a/block/blk-iocost.c b/block/blk-iocost.c
> [...]
> +static struct cftype ioc_files[] = {
> + .name = "weight",
> [...]
This adds the generic io.weight attribute. How will this compose with
the weight from IO schedulers? (AFAIK, only BFQ allows proportional
control as of now. +CC Paolo.)

I see this attributes are effectively per-cgroup per-device. Apparently,
one device should have only one weight across hierarchy. Would it make
sense to have io.bfq.weight and io.cost.weight with disjunctive devices?

(Alas, I have no idea how to make the users of io.weight happy, when
proportionality control mechanism seems orthogonal to the weight.
(Vector weights?))


> + .name = "cost.qos",
> + .flags = CFTYPE_ONLY_ON_ROOT,
> [...]
> + .name = "cost.model",
> + .flags = CFTYPE_ONLY_ON_ROOT,
I'm concerned that these aren't true cgroup attributes. The root cgroup
would act as container for global configuration options. Wouldn't these
values better fit as (configurable) attributes of the respective
devices?

Secondly, how is CFTYPE_ONLY_ON_ROOT supposed to be presented in cgroup
namespaces?

Thanks,
Michal

Attachment: signature.asc
Description: Digital signature