Re: [PATCH v6 04/14] PM / EM: Expose the Energy Model in sysfs

From: Dietmar Eggemann
Date: Thu Sep 06 2018 - 20:15:01 EST


On 09/06/2018 07:09 AM, Quentin Perret wrote:
Hi Dietmar,

On Wednesday 05 Sep 2018 at 23:56:43 (-0700), Dietmar Eggemann wrote:
On 08/20/2018 02:44 AM, Quentin Perret wrote:
Expose the Energy Model (read-only) of all performance domains in sysfs
for convenience. To do so, add a kobject to the CPU subsystem under the
umbrella of which a kobject for each performance domain is attached.

The resulting hierarchy is as follows for a platform with two
performance domains for example:

/sys/devices/system/cpu/energy_model
âââ pd0
â âââ cost
â âââ cpus
â âââ frequency
â âââ power

cpus (cpumask of the perf domain), frequency (OPP's of the perf domain) and
power (values at those OPP's) are somehow easy to grasp, cost is definitely
not.

You have this nice description in em_pd_energy() what cost actually is.
IMHO, might be worth repeating this at least in the patch header here.

Hmm, this patch introduces the sysfs interface, not the 'cost' field
itself. As long as 'cost' is documented in the patch that introduces it
we should be good no ? I mean this patch header tells you _where_ the
fields of the structure are exposed. _What_ the structure is all about
is a different story.

Mmmh, so maybe a EAS related documentation file explaining this interface as well, which can be introduced later is the solution here?

I'm just not 100% convinced that those cost values are self-explanatory like the other three items:

root@h960:~# ls /sys/devices/system/cpu/energy_model/pd0/
cost
cpus
frequency
power

root@h960:~# cat /sys/devices/system/cpu/energy_model/pd0/*
96 129 163 201 245
0-3
533000 999000 1402000 1709000 1844000
28 70 124 187 245

But yeah, in any case, a reminder shouldn't hurt I guess, if you really
want one :-)

Nothing which should hold this patch-set back though.