cpupower: Correct return type of cpu_power_is_cpu_online() in cpufreq-set
authorLaura Abbott <labbott@redhat.com>
Wed, 19 Oct 2016 22:53:52 +0000 (15:53 -0700)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 1 Nov 2016 05:16:52 +0000 (06:16 +0100)
When converting to a shared library in ac5a181d065d ("cpupower: Add
cpuidle parts into library"), cpu_freq_cpu_exists() was converted to
cpupower_is_cpu_online(). cpu_req_cpu_exists() returned 0 on success and
-ENOSYS on failure whereas cpupower_is_cpu_online returns 1 on success.
Check for the correct return value in cpufreq-set.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=1374212
Fixes: ac5a181d065d (cpupower: Add cpuidle parts into library)
Reported-by: Julian Seward <jseward@acm.org>
Signed-off-by: Laura Abbott <labbott@redhat.com>
Acked-by: Thomas Renninger <trenn@suse.com>
Cc: 4.7+ <stable@vger.kernel.org> # 4.7+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
tools/power/cpupower/utils/cpufreq-set.c

index b4bf76971dc975c5232b96f27f56310f65d2bcdd..1eef0aed64239509795229d522cada4e80edf5a2 100644 (file)
@@ -296,7 +296,7 @@ int cmd_freq_set(int argc, char **argv)
                        struct cpufreq_affected_cpus *cpus;
 
                        if (!bitmask_isbitset(cpus_chosen, cpu) ||
-                           cpupower_is_cpu_online(cpu))
+                           cpupower_is_cpu_online(cpu) != 1)
                                continue;
 
                        cpus = cpufreq_get_related_cpus(cpu);
@@ -316,10 +316,7 @@ int cmd_freq_set(int argc, char **argv)
             cpu <= bitmask_last(cpus_chosen); cpu++) {
 
                if (!bitmask_isbitset(cpus_chosen, cpu) ||
-                   cpupower_is_cpu_online(cpu))
-                       continue;
-
-               if (cpupower_is_cpu_online(cpu) != 1)
+                   cpupower_is_cpu_online(cpu) != 1)
                        continue;
 
                printf(_("Setting cpu: %d\n"), cpu);