]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
cpufreq: Clean up cpufreq_parse_governor()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 23 Nov 2017 00:23:16 +0000 (01:23 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 4 Dec 2017 14:35:40 +0000 (15:35 +0100)
Drop an unnecessary local variable from cpufreq_parse_governor()
and rearrange the code in there to make it easier to follow.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/cpufreq.c

index 41d148af77482a4f93bd2c415f936052302be507..4d76b7c57b7a4ed5259c8f2d388c5d102f126562 100644 (file)
@@ -604,16 +604,15 @@ static struct cpufreq_governor *find_governor(const char *str_governor)
 static int cpufreq_parse_governor(char *str_governor, unsigned int *policy,
                                struct cpufreq_governor **governor)
 {
-       int err = -EINVAL;
-
        if (cpufreq_driver->setpolicy) {
                if (!strncasecmp(str_governor, "performance", CPUFREQ_NAME_LEN)) {
                        *policy = CPUFREQ_POLICY_PERFORMANCE;
-                       err = 0;
-               } else if (!strncasecmp(str_governor, "powersave",
-                                               CPUFREQ_NAME_LEN)) {
+                       return 0;
+               }
+
+               if (!strncasecmp(str_governor, "powersave", CPUFREQ_NAME_LEN)) {
                        *policy = CPUFREQ_POLICY_POWERSAVE;
-                       err = 0;
+                       return 0;
                }
        } else {
                struct cpufreq_governor *t;
@@ -621,26 +620,29 @@ static int cpufreq_parse_governor(char *str_governor, unsigned int *policy,
                mutex_lock(&cpufreq_governor_mutex);
 
                t = find_governor(str_governor);
-
-               if (t == NULL) {
+               if (!t) {
                        int ret;
 
                        mutex_unlock(&cpufreq_governor_mutex);
+
                        ret = request_module("cpufreq_%s", str_governor);
+                       if (ret)
+                               return -EINVAL;
+
                        mutex_lock(&cpufreq_governor_mutex);
 
-                       if (ret == 0)
-                               t = find_governor(str_governor);
+                       t = find_governor(str_governor);
                }
 
-               if (t != NULL) {
+               mutex_unlock(&cpufreq_governor_mutex);
+
+               if (t) {
                        *governor = t;
-                       err = 0;
+                       return 0;
                }
-
-               mutex_unlock(&cpufreq_governor_mutex);
        }
-       return err;
+
+       return -EINVAL;
 }
 
 /**