Re: [RFC 6/6] sched/fair: Add sched group latency support

From: Josh Don
Date: Mon Mar 14 2022 - 20:59:14 EST


On Fri, Mar 11, 2022 at 8:15 AM Vincent Guittot
<vincent.guittot@xxxxxxxxxx> wrote:
>
[snip]
>
> static struct cftype cpu_legacy_files[] = {
> @@ -10649,6 +10673,11 @@ static struct cftype cpu_legacy_files[] = {
> .read_s64 = cpu_idle_read_s64,
> .write_s64 = cpu_idle_write_s64,
> },
> + {
> + .name = "latency",
> + .read_s64 = cpu_latency_read_s64,
> + .write_s64 = cpu_latency_write_s64,
> + },
> #endif
> #ifdef CONFIG_CFS_BANDWIDTH
> {
> @@ -10866,6 +10895,18 @@ static struct cftype cpu_files[] = {
> .read_s64 = cpu_idle_read_s64,
> .write_s64 = cpu_idle_write_s64,
> },
> + {
> + .name = "latency",
> + .flags = CFTYPE_NOT_ON_ROOT,
> + .read_s64 = cpu_latency_read_s64,
> + .write_s64 = cpu_latency_write_s64,
> + },
> + {
> + .name = "latency.nice",
> + .flags = CFTYPE_NOT_ON_ROOT,
> + .read_s64 = cpu_latency_nice_read_s64,
> + .write_s64 = cpu_latency_nice_write_s64,
> + },

Something I considered when adding cpu.idle was that negative values
could be used to indicate increasing latency sensitivity. Folding the
above latency property into cpu.idle could help consolidate the
"latency" behavior, especially given that it shouldn't really be
possible to configure an entity as both latency sensitive and idle.