Re: [PATCH 08/10] blkcg: implement blk-iocost
From: Paolo Valente <hidden>
Date: 2019-09-11 08:19:03
Also in:
cgroups, lkml
Il giorno 10 set 2019, alle ore 18:08, Tejun Heo [off-list ref] ha scritto: Hello, Michal. On Tue, Sep 10, 2019 at 02:55:14PM +0200, Michal Koutný wrote:quoted
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.)The two being enabled at the same time doesn't make sense, so we can just switch over to bfq when bfq is selected as the iosched. I asked what Paolo wanted to do in terms of interface a couple times now but didn't get an answer and he posted a patch which makes the two controllers conflict, so.... Paolo, so it looks like you want to rename all bfq files to drop the bfq prefix, right?
Yep, mainly because ... this is the solution you voted and you yourself proposed [1] :) [1] https://patchwork.kernel.org/patch/10988261/
I can implement the switching if so.
That would be perfect. Thanks, Paolo
quoted
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?It never makes sense to have both enabled, so I don't think that interface makes sense.quoted
quoted
+ .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?Initially, I put them under block device sysfs but it was too clumsy with different config file formats and all. I think it's better to have global controller configs at the root cgroup.quoted
Secondly, how is CFTYPE_ONLY_ON_ROOT supposed to be presented in cgroup namespaces?Not at all. These are system-wide configs. cgroup namespaces shouldn't have anything which aren't in non-root cgroups. Thanks. -- tejun