From: Viresh Kumar <viresh.kumar@linaro.org> To: Ionela Voinescu <ionela.voinescu@arm.com> Cc: rjw@rjwysocki.net, dietmar.eggemann@arm.com, catalin.marinas@arm.com, sudeep.holla@arm.com, will@kernel.org, linux@armlinux.org.uk, mingo@redhat.com, peterz@infradead.org, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 4/7] cpufreq: report whether cpufreq supports Frequency Invariance (FI) Date: Thu, 30 Jul 2020 10:13:46 +0530 [thread overview] Message-ID: <20200730044346.rgtaikotkgwdpc3m@vireshk-mac-ubuntu> (raw) In-Reply-To: <20200722093732.14297-5-ionela.voinescu@arm.com> On 22-07-20, 10:37, Ionela Voinescu wrote: > diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c > index 3497c1cd6818..1d0b046fe8e9 100644 > --- a/drivers/cpufreq/cpufreq.c > +++ b/drivers/cpufreq/cpufreq.c > @@ -61,6 +61,9 @@ static struct cpufreq_driver *cpufreq_driver; > static DEFINE_PER_CPU(struct cpufreq_policy *, cpufreq_cpu_data); > static DEFINE_RWLOCK(cpufreq_driver_lock); > > +/* Mark support for the scheduler's frequency invariance engine */ > +static DEFINE_STATIC_KEY_FALSE(cpufreq_set_freq_scale); > + > /* Flag to suspend/resume CPUFreq governors */ > static bool cpufreq_suspended; > > @@ -69,6 +72,25 @@ static inline bool has_target(void) > return cpufreq_driver->target_index || cpufreq_driver->target; > } > > +static inline > +void enable_cpufreq_freq_invariance(struct cpufreq_driver *driver) > +{ > + if ((driver->target || driver->target_index || driver->fast_switch) && > + !driver->setpolicy) { Just checking for !driver->setpolicy should be enough here. > + static_branch_enable_cpuslocked(&cpufreq_set_freq_scale); > + pr_debug("%s: Driver %s can provide frequency invariance.", > + __func__, driver->name); I think a simpler print will work well too. pr_debug("Freq invariance enabled"); __func__ isn't really required as this is the only print with that kind of info in cpufreq.c. > + } else > + pr_err("%s: Driver %s cannot provide frequency invariance.", > + __func__, driver->name); Why not supporting freq-invariance an error ? I will just drop this message completely. -- viresh
WARNING: multiple messages have this Message-ID (diff)
From: Viresh Kumar <viresh.kumar@linaro.org> To: Ionela Voinescu <ionela.voinescu@arm.com> Cc: linux-pm@vger.kernel.org, peterz@infradead.org, catalin.marinas@arm.com, rjw@rjwysocki.net, linux@armlinux.org.uk, linux-kernel@vger.kernel.org, mingo@redhat.com, sudeep.holla@arm.com, will@kernel.org, dietmar.eggemann@arm.com, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v2 4/7] cpufreq: report whether cpufreq supports Frequency Invariance (FI) Date: Thu, 30 Jul 2020 10:13:46 +0530 [thread overview] Message-ID: <20200730044346.rgtaikotkgwdpc3m@vireshk-mac-ubuntu> (raw) In-Reply-To: <20200722093732.14297-5-ionela.voinescu@arm.com> On 22-07-20, 10:37, Ionela Voinescu wrote: > diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c > index 3497c1cd6818..1d0b046fe8e9 100644 > --- a/drivers/cpufreq/cpufreq.c > +++ b/drivers/cpufreq/cpufreq.c > @@ -61,6 +61,9 @@ static struct cpufreq_driver *cpufreq_driver; > static DEFINE_PER_CPU(struct cpufreq_policy *, cpufreq_cpu_data); > static DEFINE_RWLOCK(cpufreq_driver_lock); > > +/* Mark support for the scheduler's frequency invariance engine */ > +static DEFINE_STATIC_KEY_FALSE(cpufreq_set_freq_scale); > + > /* Flag to suspend/resume CPUFreq governors */ > static bool cpufreq_suspended; > > @@ -69,6 +72,25 @@ static inline bool has_target(void) > return cpufreq_driver->target_index || cpufreq_driver->target; > } > > +static inline > +void enable_cpufreq_freq_invariance(struct cpufreq_driver *driver) > +{ > + if ((driver->target || driver->target_index || driver->fast_switch) && > + !driver->setpolicy) { Just checking for !driver->setpolicy should be enough here. > + static_branch_enable_cpuslocked(&cpufreq_set_freq_scale); > + pr_debug("%s: Driver %s can provide frequency invariance.", > + __func__, driver->name); I think a simpler print will work well too. pr_debug("Freq invariance enabled"); __func__ isn't really required as this is the only print with that kind of info in cpufreq.c. > + } else > + pr_err("%s: Driver %s cannot provide frequency invariance.", > + __func__, driver->name); Why not supporting freq-invariance an error ? I will just drop this message completely. -- viresh _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-07-30 4:43 UTC|newest] Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-07-22 9:37 [PATCH v2 0/7] cpufreq: improve frequency invariance support Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 1/7] cpufreq: move invariance setter calls in cpufreq core Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-27 13:48 ` Rafael J. Wysocki 2020-07-27 13:48 ` Rafael J. Wysocki 2020-07-29 9:03 ` Ionela Voinescu 2020-07-29 9:03 ` Ionela Voinescu 2020-07-30 3:41 ` Viresh Kumar 2020-07-30 3:41 ` Viresh Kumar 2020-08-03 13:26 ` Ionela Voinescu 2020-08-03 13:26 ` Ionela Voinescu 2020-08-03 13:46 ` Rafael J. Wysocki 2020-08-03 13:46 ` Rafael J. Wysocki 2020-08-03 14:16 ` Ionela Voinescu 2020-08-03 14:16 ` Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 2/7] cpufreq: set invariance scale factor on transition end Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-27 13:52 ` Rafael J. Wysocki 2020-07-27 13:52 ` Rafael J. Wysocki 2020-07-29 9:14 ` Ionela Voinescu 2020-07-29 9:14 ` Ionela Voinescu 2020-07-30 4:13 ` Viresh Kumar 2020-07-30 4:13 ` Viresh Kumar 2020-08-03 13:58 ` Ionela Voinescu 2020-08-03 13:58 ` Ionela Voinescu 2020-08-04 6:26 ` Viresh Kumar 2020-08-04 6:26 ` Viresh Kumar 2020-08-05 10:35 ` Ionela Voinescu 2020-08-05 10:35 ` Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 3/7] arch_topology: disable frequency invariance for CONFIG_BL_SWITCHER Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-30 4:24 ` Viresh Kumar 2020-07-30 4:24 ` Viresh Kumar 2020-07-30 10:29 ` Dietmar Eggemann 2020-07-30 10:29 ` Dietmar Eggemann 2020-07-31 15:48 ` Sudeep Holla 2020-07-31 15:48 ` Sudeep Holla 2020-08-03 14:39 ` Ionela Voinescu 2020-08-03 14:39 ` Ionela Voinescu 2020-08-04 6:30 ` Viresh Kumar 2020-08-04 6:30 ` Viresh Kumar 2020-08-10 9:01 ` Ionela Voinescu 2020-08-10 9:01 ` Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 4/7] cpufreq: report whether cpufreq supports Frequency Invariance (FI) Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-27 14:02 ` Rafael J. Wysocki 2020-07-27 14:02 ` Rafael J. Wysocki 2020-07-29 14:39 ` Ionela Voinescu 2020-07-29 14:39 ` Ionela Voinescu 2020-07-30 4:43 ` Viresh Kumar [this message] 2020-07-30 4:43 ` Viresh Kumar 2020-08-03 15:24 ` Ionela Voinescu 2020-08-03 15:24 ` Ionela Voinescu 2020-08-04 6:46 ` Viresh Kumar 2020-08-04 6:46 ` Viresh Kumar 2020-08-05 10:35 ` Ionela Voinescu 2020-08-05 10:35 ` Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 5/7] arch_topology,cpufreq,sched/core: constify arch_* cpumasks Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 5/7] arch_topology, cpufreq, sched/core: " Ionela Voinescu 2020-07-30 11:43 ` [PATCH v2 5/7] arch_topology,cpufreq,sched/core: " Catalin Marinas 2020-07-30 11:43 ` [PATCH v2 5/7] arch_topology, cpufreq, sched/core: " Catalin Marinas 2020-07-22 9:37 ` [PATCH v2 6/7] arch_topology,arm,arm64: define arch_scale_freq_invariant() Ionela Voinescu 2020-07-22 9:37 ` [PATCH v2 6/7] arch_topology, arm, arm64: " Ionela Voinescu 2020-07-30 11:44 ` [PATCH v2 6/7] arch_topology,arm,arm64: " Catalin Marinas 2020-07-30 11:44 ` Catalin Marinas 2020-07-22 9:37 ` [PATCH v2 7/7] cpufreq: make schedutil the default for arm and arm64 Ionela Voinescu 2020-07-22 9:37 ` Ionela Voinescu 2020-07-30 4:54 ` Viresh Kumar 2020-07-30 4:54 ` Viresh Kumar
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200730044346.rgtaikotkgwdpc3m@vireshk-mac-ubuntu \ --to=viresh.kumar@linaro.org \ --cc=catalin.marinas@arm.com \ --cc=dietmar.eggemann@arm.com \ --cc=ionela.voinescu@arm.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=mingo@redhat.com \ --cc=peterz@infradead.org \ --cc=rjw@rjwysocki.net \ --cc=sudeep.holla@arm.com \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.