Commit 69810374 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki

Merge branch 'pm-tools'

* pm-tools:
  cpupower : Fix cpupower working when cpu0 is offline
  cpupowerutils: bench - Fix cpu online check
parents 7e8a09e0 43d2d3b5
...@@ -61,7 +61,7 @@ int set_cpufreq_governor(char *governor, unsigned int cpu) ...@@ -61,7 +61,7 @@ int set_cpufreq_governor(char *governor, unsigned int cpu)
dprintf("set %s as cpufreq governor\n", governor); dprintf("set %s as cpufreq governor\n", governor);
if (cpupower_is_cpu_online(cpu) != 0) { if (cpupower_is_cpu_online(cpu) != 1) {
perror("cpufreq_cpu_exists"); perror("cpufreq_cpu_exists");
fprintf(stderr, "error: cpu %u does not exist\n", cpu); fprintf(stderr, "error: cpu %u does not exist\n", cpu);
return -1; return -1;
......
...@@ -130,15 +130,18 @@ static struct cpuidle_monitor *cpuidle_register(void) ...@@ -130,15 +130,18 @@ static struct cpuidle_monitor *cpuidle_register(void)
{ {
int num; int num;
char *tmp; char *tmp;
int this_cpu;
this_cpu = sched_getcpu();
/* Assume idle state count is the same for all CPUs */ /* Assume idle state count is the same for all CPUs */
cpuidle_sysfs_monitor.hw_states_num = cpuidle_state_count(0); cpuidle_sysfs_monitor.hw_states_num = cpuidle_state_count(this_cpu);
if (cpuidle_sysfs_monitor.hw_states_num <= 0) if (cpuidle_sysfs_monitor.hw_states_num <= 0)
return NULL; return NULL;
for (num = 0; num < cpuidle_sysfs_monitor.hw_states_num; num++) { for (num = 0; num < cpuidle_sysfs_monitor.hw_states_num; num++) {
tmp = cpuidle_state_name(0, num); tmp = cpuidle_state_name(this_cpu, num);
if (tmp == NULL) if (tmp == NULL)
continue; continue;
...@@ -146,7 +149,7 @@ static struct cpuidle_monitor *cpuidle_register(void) ...@@ -146,7 +149,7 @@ static struct cpuidle_monitor *cpuidle_register(void)
strncpy(cpuidle_cstates[num].name, tmp, CSTATE_NAME_LEN - 1); strncpy(cpuidle_cstates[num].name, tmp, CSTATE_NAME_LEN - 1);
free(tmp); free(tmp);
tmp = cpuidle_state_desc(0, num); tmp = cpuidle_state_desc(this_cpu, num);
if (tmp == NULL) if (tmp == NULL)
continue; continue;
strncpy(cpuidle_cstates[num].desc, tmp, CSTATE_DESC_LEN - 1); strncpy(cpuidle_cstates[num].desc, tmp, CSTATE_DESC_LEN - 1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment