On Wed, Sep 12, 2018 at 10:13:00AM +0100, Quentin Perret wrote: > In order to make sure Energy Aware Scheduling (EAS) doesn't hurt > systems not using it, add a new sched_feat, called ENERGY_AWARE, > guarding the access to EAS code paths. > > Signed-off-by: Quentin Perret <quentin.per...@arm.com> > --- > kernel/sched/features.h | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/kernel/sched/features.h b/kernel/sched/features.h > index 85ae8488039c..26ff6752e492 100644 > --- a/kernel/sched/features.h > +++ b/kernel/sched/features.h > @@ -90,3 +90,10 @@ SCHED_FEAT(WA_BIAS, true) > * UtilEstimation. Use estimated CPU utilization. > */ > SCHED_FEAT(UTIL_EST, true) > + > +/* > + * Energy-Aware Scheduling. Whether or not tasks will be placed into an > + * energy-aware fashion depends on this feature being enabled and on the > + * root domain having an Energy Model attached. > + */ > +SCHED_FEAT(ENERGY_AWARE, false)
So these are debug knobs.. I would expect there to be a regular static_key that is controlled by the presence of EM data. Remember, if you compile with SCHED_DEBUG=n, this becomes a compile time constant: false, and the compiler gets to do lots of DCE.