[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191223191014.g7lnxafuadwtcqub@e107158-lin.cambridge.arm.com>
Date: Mon, 23 Dec 2019 19:10:14 +0000
From: Qais Yousef <qais.yousef@....com>
To: Doug Smythies <dsmythies@...us.net>
Cc: 'Giovanni Gherdovich' <ggherdovich@...e.cz>, x86@...nel.org,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
'Mel Gorman' <mgorman@...hsingularity.net>,
'Matt Fleming' <matt@...eblueprint.co.uk>,
'Viresh Kumar' <viresh.kumar@...aro.org>,
'Juri Lelli' <juri.lelli@...hat.com>,
'Paul Turner' <pjt@...gle.com>,
'Peter Zijlstra' <peterz@...radead.org>,
'Vincent Guittot' <vincent.guittot@...aro.org>,
'Quentin Perret' <qperret@...rret.net>,
'Dietmar Eggemann' <dietmar.eggemann@....com>,
'Srinivas Pandruvada' <srinivas.pandruvada@...ux.intel.com>,
'Thomas Gleixner' <tglx@...utronix.de>,
'Ingo Molnar' <mingo@...hat.com>,
'Borislav Petkov' <bp@...e.de>, 'Len Brown' <lenb@...nel.org>,
"'Rafael J . Wysocki'" <rjw@...ysocki.net>
Subject: Re: [PATCH v4 1/6] x86,sched: Add support for frequency invariance
On 12/23/19 08:34, Doug Smythies wrote:
> On 2019.12.23 06:41 Qais Yousef wrote:
> > On 12/23/19 14:07, Qais Yousef wrote:
> >>> Re-boot to the nocgv1 (stock + cgroup_no_v1=all) kernel.
> >>> set the schedutil governor.
> >>> launch test 2 and related monitoring tools.
> >>> verify performance governor like behavior.
> >>
> >> So as stated above, by default uclamp_{min, max} = (0, 1024). So it wouldn't
> >> act as performance governor by default unless you explicitly write 1024 to
> >> uclamp.min.
> >>
> >> Let me go find Ubuntu mainline tree to see if they applied anything extra in
> >> there. If they modified the default behavior that could explain what you see.
> >
> > Actually I see what you were saying now that you copy the config. So I think
> > I misunderstood and you are running Linus' 5.5-rc2 + Ubuntu PPA config.
>
> Yes, exactly.
> I have a clone of the main Linus git branch, but steal the kernel
> configuration from the Ubuntu mainline PPA.
I think I managed to reproduce it. The below seems to fix it for me, can you
try it out please?
I think what's going on is that the child group default util_min value isn't
propagated correctly after it's created, so we end up using the root_task_group
values which is 1024 for both min and max.
---
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 90e4b00ace89..cf9d9106d1b5 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -7100,6 +7100,11 @@ static int cpu_cgroup_css_online(struct cgroup_subsys_state *css)
if (parent)
sched_online_group(tg, parent);
+
+#ifdef CONFIG_UCLAMP_TASK_GROUP
+ cpu_util_update_eff(css);
+#endif
+
return 0;
}
Powered by blists - more mailing lists