]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
cpupower: Add support for parsing 'enabled' or 'disabled' strings from table
authorMario Limonciello <mario.limonciello@amd.com>
Wed, 18 Dec 2024 19:09:51 +0000 (13:09 -0600)
committerShuah Khan <skhan@linuxfoundation.org>
Fri, 20 Dec 2024 16:12:07 +0000 (09:12 -0700)
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>
tools/power/cpupower/lib/cpufreq.c

index 1516d23c17c98c73aa605f6b684da064893744d7..f27ee6d4b000cc9038c99a5c564a3665b57fe02b 100644 (file)
@@ -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)