Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6abf18bd authored by Patrick Bellasi's avatar Patrick Bellasi Committed by Todd Kjos
Browse files

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: default avatarPatrick Bellasi <patrick.bellasi@arm.com>
Signed-off-by: default avatarChris Redpath <chris.redpath@arm.com>
(cherry picked from commit 13e2e3c7f7d09f619444631a0962fd8020660b8d)
Signed-off-by: default avatarQuentin Perret <quentin.perret@arm.com>
parent 32ea7750
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -5890,8 +5890,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);