Re: [PATCH] sched: cgroup SCHED_IDLE support

From: Dietmar Eggemann
Date: Thu Jun 10 2021 - 08:53:59 EST


Hi Josh,

On 09/06/2021 01:11, Josh Don wrote:

[...]

> static void __maybe_unused cpu_period_quota_print(struct seq_file *sf,
> @@ -10306,6 +10318,12 @@ static struct cftype cpu_files[] = {
> .read_s64 = cpu_weight_nice_read_s64,
> .write_s64 = cpu_weight_nice_write_s64,
> },
> + {
> + .name = "idle",
> + .flags = CFTYPE_NOT_ON_ROOT,
> + .read_s64 = cpu_idle_read_s64,
> + .write_s64 = cpu_idle_write_s64,
> + },

Any reason why this should only work on cgroup-v2?

struct cftype cpu_legacy_files[] vs. cpu_files[]

[...]

> @@ -11340,10 +11408,14 @@ void init_tg_cfs_entry(struct task_group *tg, struct cfs_rq *cfs_rq,
>
> static DEFINE_MUTEX(shares_mutex);
>
> -int sched_group_set_shares(struct task_group *tg, unsigned long shares)
> +#define IDLE_WEIGHT sched_prio_to_weight[ARRAY_SIZE(sched_prio_to_weight) - 1]

Why not 3 ? Like for tasks (WEIGHT_IDLEPRIO)?

[...]