[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <A69EF8D0-8156-46DB-A4DA-C5334764116E@linaro.org>
Date: Wed, 11 Sep 2019 10:18:53 +0200
From: Paolo Valente <paolo.valente@...aro.org>
To: Tejun Heo <tj@...nel.org>
Cc: Michal Koutný <mkoutny@...e.com>,
Johannes Weiner <hannes@...xchg.org>, clm@...com,
dennisz@...com, newella@...com, Li Zefan <lizefan@...wei.com>,
Jens Axboe <axboe@...nel.dk>,
Josef Bacik <josef@...icpanda.com>,
Josef Bacik <jbacik@...com>, kernel-team@...com,
Rik van Riel <riel@...riel.com>, cgroups@...r.kernel.org,
linux-block@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 08/10] blkcg: implement blk-iocost
> Il giorno 10 set 2019, alle ore 18:08, Tejun Heo <tj@...nel.org> ha scritto:
>
> Hello, Michal.
>
> On Tue, Sep 10, 2019 at 02:55:14PM +0200, Michal Koutný wrote:
>> 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
>> 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.
>
>>> + .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.
>
>> 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
Powered by blists - more mailing lists