diff options
| author | Patrick Bellasi <patrick.bellasi@arm.com> | 2017-09-07 12:24:45 +0100 |
|---|---|---|
| committer | Chris Redpath <chris.redpath@arm.com> | 2017-10-27 13:30:33 +0100 |
| commit | 2aada289d7be37116f21d70177cb06a929b5d961 (patch) | |
| tree | 457df264bcdc9c77f3aae24edd51faa98eb5bf9a | |
| parent | 2f30db8df4076c54f92ac2ebe26734e27c164fd3 (diff) | |
sched/fair: trace energy_diff for non boosted tasks
In systems where SchedTune is enabled, we do not report energy diff for non
boosted tasks. Let's fix this by always genereting an energy_diff event where
however:
nrg.delta = 0, since we skip energy normalization
payoff = nrg.diff, since the payoff is defined just by the energy difference
Change-Id: I9a11ec19b6f56da04147f5ae5b47daf1dd180445
Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
Signed-off-by: Chris Redpath <chris.redpath@arm.com>
| -rw-r--r-- | kernel/sched/fair.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 5d8081b77f8a..a17820385ee2 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -5702,8 +5702,14 @@ energy_diff(struct energy_env *eenv) __energy_diff(eenv); /* Return energy diff when boost margin is 0 */ - if (boost == 0) + if (boost == 0) { + trace_sched_energy_diff(eenv->task, + eenv->src_cpu, eenv->dst_cpu, eenv->util_delta, + eenv->nrg.before, eenv->nrg.after, eenv->nrg.diff, + eenv->cap.before, eenv->cap.after, eenv->cap.delta, + 0, -eenv->nrg.diff); return eenv->nrg.diff; + } /* Compute normalized energy diff */ nrg_delta = normalize_energy(eenv->nrg.diff); |
