ANDROID: sched: Initialize energy data structures
authorDietmar Eggemann <dietmar.eggemann@arm.com>
Fri, 14 Nov 2014 16:20:20 +0000 (16:20 +0000)
committerChris Redpath <chris.redpath@arm.com>
Thu, 14 Dec 2017 21:41:08 +0000 (21:41 +0000)
commitf9b73827c83bf9ec88ce3079fac13519aaae5179
tree7cf648988ceec041c0bdca04c7f49b62a3d10759
parentc073344f734524e3b35bdd8de52667870da291d2
ANDROID: sched: Initialize energy data structures

The sched_group_energy (sge) pointer of the first sched_group (sg) in
the sched_domain (sd) is initialized to point to the appropriate (in
terms of sd level and cpu) sge data defined in the arch and so to the
correct part of the Energy Model (EM).

Energy-aware scheduling allows that a system has only EM data up to a
certain sd level (so called highest energy aware balancing sd level).
A check in init_sched_energy() enforces that all sd's below this sd
level contain EM data.

The 'int cpu' parameter of sched_domain_energy_f requires that
check_sched_energy_data() makes sure that all cpus spanned by a sg
are provisioned with the same EM data.

This patch has also been tested with feature FORCE_SD_OVERLAP enabled.

cc: Ingo Molnar <mingo@redhat.com>
cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Change-Id: Ic73adfee78a189576fb4ed8ad309424ee498dac1
Signed-off-by: Chris Redpath <chris.redpath@arm.com>
kernel/sched/topology.c