diff options
Diffstat (limited to 'kernel/sched/energy.c')
-rw-r--r-- | kernel/sched/energy.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/sched/energy.c b/kernel/sched/energy.c index b0656b7a93e3..50d183b1e156 100644 --- a/kernel/sched/energy.c +++ b/kernel/sched/energy.c @@ -27,7 +27,10 @@ #include <linux/sched_energy.h> #include <linux/stddef.h> +#include "sched.h" + struct sched_group_energy *sge_array[NR_CPUS][NR_SD_LEVELS]; +bool sched_energy_aware; static void free_resources(void) { @@ -56,6 +59,13 @@ void init_sched_energy_costs(void) int sd_level, i, nstates, cpu; const __be32 *val; + if (!energy_aware()) { + sched_energy_aware = false; + return; + } + + sched_energy_aware = true; + for_each_possible_cpu(cpu) { cn = of_get_cpu_node(cpu, NULL); if (!cn) { |