ANDROID: Streamline sched_domain_energy_f functions
authorDietmar Eggemann <dietmar.eggemann@arm.com>
Sun, 11 Mar 2018 12:02:20 +0000 (13:02 +0100)
committerDietmar Eggemann <dietmar.eggemann@arm.com>
Wed, 18 Jul 2018 09:55:14 +0000 (10:55 +0100)
There is no need to print that there is no sched group energy for a
sched domain.

It is e.g. perfectly fine to have an Energy Model on MC and DIE level
and not on SYS level.

The Energy Model consistency check between sched domains is done in
init_sched_groups_energy(). In case a sched domain level (l) has energy
data its child sched domain level (l-1) has to have energy data as well.

Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Change-Id: Iff1ecc86720a310f4b96282c3f41931aee733af2

arch/arm/kernel/topology.c
arch/arm64/kernel/topology.c

index e26e1fb199dd583d33e888594ea05ce320115fd2..aa1b3870e83649e8105e3d9fcb52b48805219b28 100644 (file)
 #include <asm/cputype.h>
 #include <asm/topology.h>
 
-/* sd energy functions */
 static inline
 const struct sched_group_energy * const cpu_core_energy(int cpu)
 {
-       struct sched_group_energy *sge = sge_array[cpu][SD_LEVEL0];
-
-       if (!sge) {
-               pr_warn("Invalid sched_group_energy for CPU%d\n", cpu);
-               return NULL;
-       }
-
-       return sge;
+       return sge_array[cpu][SD_LEVEL0];
 }
 
 static inline
 const struct sched_group_energy * const cpu_cluster_energy(int cpu)
 {
-       struct sched_group_energy *sge = sge_array[cpu][SD_LEVEL1];
-
-       if (!sge) {
-               pr_warn("Invalid sched_group_energy for Cluster%d\n", cpu);
-               return NULL;
-       }
-
-       return sge;
+       return sge_array[cpu][SD_LEVEL1];
 }
 
 /*
index cd0fc6b95280435ef639cf5b9563e221c2bcb584..a2dca5ff529805f019c3f8154d52334f33ba7404 100644 (file)
@@ -308,40 +308,19 @@ static int cpu_flags(void)
 static inline
 const struct sched_group_energy * const cpu_core_energy(int cpu)
 {
-       struct sched_group_energy *sge = sge_array[cpu][SD_LEVEL0];
-
-       if (!sge) {
-               pr_warn("Invalid sched_group_energy for CPU%d\n", cpu);
-               return NULL;
-       }
-
-       return sge;
+       return sge_array[cpu][SD_LEVEL0];
 }
 
 static inline
 const struct sched_group_energy * const cpu_cluster_energy(int cpu)
 {
-       struct sched_group_energy *sge = sge_array[cpu][SD_LEVEL1];
-
-       if (!sge) {
-               pr_warn("Invalid sched_group_energy for Cluster%d\n", cpu);
-               return NULL;
-       }
-
-       return sge;
+       return sge_array[cpu][SD_LEVEL1];
 }
 
 static inline
 const struct sched_group_energy * const cpu_system_energy(int cpu)
 {
-       struct sched_group_energy *sge = sge_array[cpu][SD_LEVEL2];
-
-       if (!sge) {
-               pr_warn("Invalid sched_group_energy for System%d\n", cpu);
-               return NULL;
-       }
-
-       return sge;
+       return sge_array[cpu][SD_LEVEL2];
 }
 
 static struct sched_domain_topology_level arm64_topology[] = {