Skip to content

Commit

Permalink
tools/power turbostat: Fix output formatting for ACPI CST enumeration
Browse files Browse the repository at this point in the history
turbostat formatting is broken with ACPI CST for enumeration.  The
problem is that the CX_ACPI% is eight characters long which does not
work with tab formatting.  One simple solution is to remove the underbar
from the state name such that C1_ACPI will be displayed as C1ACPI.

Signed-off-by: David Arcari <darcari@redhat.com>
Cc: Len Brown <lenb@kernel.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Len Brown <len.brown@intel.com>
  • Loading branch information
David Arcari authored and Len Brown committed Sep 3, 2020
1 parent b88cad5 commit fecb3bc
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions tools/power/x86/turbostat/turbostat.c
Original file line number Diff line number Diff line change
Expand Up @@ -3682,6 +3682,20 @@ int has_config_tdp(unsigned int family, unsigned int model)
}
}

static void
remove_underbar(char *s)
{
char *to = s;

while (*s) {
if (*s != '_')
*to++ = *s;
s++;
}

*to = 0;
}

static void
dump_cstate_pstate_config_info(unsigned int family, unsigned int model)
{
Expand Down Expand Up @@ -3764,6 +3778,8 @@ dump_sysfs_cstate_config(void)
*sp = '\0';
fclose(input);

remove_underbar(name_buf);

sprintf(path, "/sys/devices/system/cpu/cpu%d/cpuidle/state%d/desc",
base_cpu, state);
input = fopen(path, "r");
Expand Down Expand Up @@ -5830,6 +5846,8 @@ void probe_sysfs(void)
*sp = '%';
*(sp + 1) = '\0';

remove_underbar(name_buf);

fclose(input);

sprintf(path, "cpuidle/state%d/time", state);
Expand Down Expand Up @@ -5857,6 +5875,8 @@ void probe_sysfs(void)
*sp = '\0';
fclose(input);

remove_underbar(name_buf);

sprintf(path, "cpuidle/state%d/usage", state);

if (is_deferred_skip(name_buf))
Expand Down

0 comments on commit fecb3bc

Please sign in to comment.