diff options
author | Mario Limonciello <mario.limonciello@amd.com> | 2024-12-18 13:09:51 -0600 |
---|---|---|
committer | Shuah Khan <skhan@linuxfoundation.org> | 2024-12-20 09:12:07 -0700 |
commit | 3f2eb7606eee37aea630c4b7aa42497bc36ca157 (patch) | |
tree | 00a7009a93df403190dc40d8edffe1ef99013388 /tools | |
parent | dec2f97a1571ed28ddbadf4431afc5e5872a10df (diff) |
cpupower: Add support for parsing 'enabled' or 'disabled' strings from table
When cpufreq_get_sysfs_value_from_table() is passed a table with
kernel strings that report 'enabled' or 'disabled' it always returns 0
because these can't cleanly convert to integers.
Explicitly look for enabled or disabled strings from the kernel to handle
this.
Link: https://lore.kernel.org/r/20241218191144.3440854-3-superm1@kernel.org
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/power/cpupower/lib/cpufreq.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/power/cpupower/lib/cpufreq.c b/tools/power/cpupower/lib/cpufreq.c index 1516d23c17c9..f27ee6d4b000 100644 --- a/tools/power/cpupower/lib/cpufreq.c +++ b/tools/power/cpupower/lib/cpufreq.c @@ -102,6 +102,10 @@ unsigned long cpufreq_get_sysfs_value_from_table(unsigned int cpu, if (len == 0) return 0; + if (!strcmp(linebuf, "enabled\n")) + return 1; + if (!strcmp(linebuf, "disabled\n")) + return 0; value = strtoul(linebuf, &endp, 0); if (endp == linebuf || errno == ERANGE) |