Re: [PATCH v2 08/12] sched/core: uclamp: extend cpu's cgroup controller

From: Patrick Bellasi
Date: Mon Jul 23 2018 - 11:17:32 EST


On 20-Jul 19:37, Suren Baghdasaryan wrote:
> On Mon, Jul 16, 2018 at 1:29 AM, Patrick Bellasi
> <patrick.bellasi@xxxxxxx> wrote:

[...]

> > +#ifdef CONFIG_UCLAMP_TASK_GROUP
> > +static int cpu_util_min_write_u64(struct cgroup_subsys_state *css,
> > + struct cftype *cftype, u64 min_value)
> > +{
> > + struct task_group *tg;
> > + int ret = -EINVAL;
> > +
> > + if (min_value > SCHED_CAPACITY_SCALE)
> > + return -ERANGE;
> > +
> > + mutex_lock(&uclamp_mutex);
> > + rcu_read_lock();
> > +
> > + tg = css_tg(css);
> > + if (tg->uclamp[UCLAMP_MIN].value == min_value) {
> > + ret = 0;
> > + goto out;
> > + }
> > + if (tg->uclamp[UCLAMP_MAX].value < min_value)
> > + goto out;
> > +
>
> + tg->uclamp[UCLAMP_MIN].value = min_value;
> + ret = 0;
>
> Are these assignments missing or am I missing something? Same for
> cpu_util_max_write_u64().

They are introduced in the following patch, to keep this one focus
just on CGroups integration.

I'm also returning -EINVAL at this stage since, with just this patch
in, we are not really providing any good service to user-space, i.e.
it's like clamp groups not being available...

Maybe I can call this out better in the change log ;)

> > +out:
> > + rcu_read_unlock();
> > + mutex_unlock(&uclamp_mutex);
> > +
> > + return ret;
> > +}

[...]

--
#include <best/regards.h>

Patrick Bellasi