linux-cpupower-4.15-rc2
This update consists of fixes to tool's handling of offline cpus. The first patch fixes the tool to find information on the cpu it is running on, instead of always looking for cpu0 and failing if cpu0 happens to be offline. The second patch fixes the incorrect check for offline cpu status. -----BEGIN PGP SIGNATURE----- iQIcBAABCAAGBQJaDyPgAAoJEAsCRMQNDUMcw88P/1LYlu4RXoVzReu14yy8U4XK bWQdc2uAGu0fdTf9olrk4OsCGP4Hbs3nDGf1VaOYWU2Gn87DhpiIWuJ0See0X4Gs 6i7U8kLWRVtbJT25pvt5hNgW7udtKkhpXpfJOSQCKR3qB8rpvX6b+ueBmyCAHvuQ i5AnN9oiZopUQiCeXYDqO04CF/hr9aKRJQUBgeSjIiGeGvwOqCUWZrsVuUCR17Xj Bi5MG5qI/ufMYuy7FRPxMgne30OIA5y2axVTuhxLhR5mg+KXennMCltv8xQMeRUM e/dqKDsyXr1a4tq5u91j88L+yZrFYP3oS2oO97RpGhD7wjcHbrf17JW0cl4BVm3q u6Lpg22HdYMcyMZkVqTcP181PX9+Dbn/3vvpHWpNEqMg/LMUrrGa442nqtOZTB5Y flqpbhsDmaKMvIqqW7b0D8tbm1JKBRETqUaFeaGXcpAtzlWS9+4djdQiGpRu9JEf Q8YXazIrm9EYzKcNPor0m7ItxIxPWwD5xMU+jF3mqdM08zbU//he48hysryqtnbD cHpDpLwO6uaXtg+wEe+30mFGd2urvBTV0Y6pd0ok2FTnJRTY/OY9c6BhltUhpvBO zgf8AKhFBULrt/l/x0OQ0xJ7s9kfEDSnoDtr8sNM9Poc/2BajCSanWKRmzSmqNnZ rC9m7FKfJkQ8Lm/i0hkW =Xe5t -----END PGP SIGNATURE----- Merge tag 'linux-cpupower-4.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux Pull cpupower utility fixes for 4.15-rc2 from Shuah Khan: "This update consists of fixes to tool's handling of offline cpus. The first patch fixes the tool to find information on the cpu it is running on, instead of always looking for cpu0 and failing if cpu0 happens to be offline. The second patch fixes the incorrect check for offline cpu status." * tag 'linux-cpupower-4.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux: cpupower : Fix cpupower working when cpu0 is offline cpupowerutils: bench - Fix cpu online check
This commit is contained in:
commit
43d2d3b56d
@ -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)
|
|||||||
{
|
{
|
||||||
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)
|
|||||||
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);
|
||||||
|
Loading…
Reference in New Issue
Block a user