diff mbox series

cpufreq: Remove the weakly defined cpufreq_default_governor()

Message ID 2f00a5847708547a57920e24a2ec5e76b265cde9.1593425047.git.viresh.kumar@linaro.org (mailing list archive)
State Mainlined, archived
Headers show
Series cpufreq: Remove the weakly defined cpufreq_default_governor() | expand

Commit Message

Viresh Kumar June 29, 2020, 10:04 a.m. UTC
The default cpufreq governor is chosen with the help of a "choice"
option in the Kconfig which will always end up selecting one of the
governors and so the weakly defined definition of
cpufreq_default_governor() will never get called.

Moreover, this makes us skip the checking of the return value of that
routine as it will always be non NULL.

If the Kconfig option changes in future, then we will start getting a
link error instead (and it won't go unnoticed as in the case of the weak
definition).

Suggested-by: Quentin Perret <qperret@google.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
Based over the following series:
- [PATCH V4 0/3] cpufreq: Allow default governor on cmdline and fix
  locking issues

 drivers/cpufreq/cpufreq.c | 7 -------
 1 file changed, 7 deletions(-)

Comments

Rafael J. Wysocki June 30, 2020, 6:39 p.m. UTC | #1
On Mon, Jun 29, 2020 at 10:48 PM Viresh Kumar <viresh.kumar@linaro.org> wrote:
>
> The default cpufreq governor is chosen with the help of a "choice"
> option in the Kconfig which will always end up selecting one of the
> governors and so the weakly defined definition of
> cpufreq_default_governor() will never get called.
>
> Moreover, this makes us skip the checking of the return value of that
> routine as it will always be non NULL.
>
> If the Kconfig option changes in future, then we will start getting a
> link error instead (and it won't go unnoticed as in the case of the weak
> definition).
>
> Suggested-by: Quentin Perret <qperret@google.com>
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> ---
> Based over the following series:
> - [PATCH V4 0/3] cpufreq: Allow default governor on cmdline and fix
>   locking issues
>
>  drivers/cpufreq/cpufreq.c | 7 -------
>  1 file changed, 7 deletions(-)
>
> diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
> index ad94b1d47ddb..036f4cc42ede 100644
> --- a/drivers/cpufreq/cpufreq.c
> +++ b/drivers/cpufreq/cpufreq.c
> @@ -1056,11 +1056,6 @@ static int cpufreq_add_dev_interface(struct cpufreq_policy *policy)
>         return 0;
>  }
>
> -__weak struct cpufreq_governor *cpufreq_default_governor(void)
> -{
> -       return NULL;
> -}
> -
>  static int cpufreq_init_policy(struct cpufreq_policy *policy)
>  {
>         struct cpufreq_governor *gov = NULL;
> @@ -1079,8 +1074,6 @@ static int cpufreq_init_policy(struct cpufreq_policy *policy)
>
>                 if (!gov) {
>                         gov = cpufreq_default_governor();
> -                       if (!gov)
> -                               return -ENODATA;
>                         __module_get(gov->owner);
>                 }
>
> --

Applied as 5.9 material, thanks!
diff mbox series

Patch

diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index ad94b1d47ddb..036f4cc42ede 100644
--- a/drivers/cpufreq/cpufreq.c
+++ b/drivers/cpufreq/cpufreq.c
@@ -1056,11 +1056,6 @@  static int cpufreq_add_dev_interface(struct cpufreq_policy *policy)
 	return 0;
 }
 
-__weak struct cpufreq_governor *cpufreq_default_governor(void)
-{
-	return NULL;
-}
-
 static int cpufreq_init_policy(struct cpufreq_policy *policy)
 {
 	struct cpufreq_governor *gov = NULL;
@@ -1079,8 +1074,6 @@  static int cpufreq_init_policy(struct cpufreq_policy *policy)
 
 		if (!gov) {
 			gov = cpufreq_default_governor();
-			if (!gov)
-				return -ENODATA;
 			__module_get(gov->owner);
 		}