]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
cpufreq: use strlen() for governor name comparison
authorZihuan Zhang <zhangzihuan@kylinos.cn>
Fri, 22 Aug 2025 07:04:23 +0000 (15:04 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 22 Aug 2025 19:33:22 +0000 (21:33 +0200)
Most kernel code using strncasecmp()/strncmp() passes strlen("xxx")
as the length argument. cpufreq_parse_policy() previously used
CPUFREQ_NAME_LEN (16), which is longer than the actual strings
("performance" is 11 chars, "powersave" is 9 chars).

This patch switches to strlen() for the comparison, making the
matching slightly more permissive (e.g., "powersavexxx" will now
also match "powersave"). While this is unlikely to cause functional
issues, it aligns cpufreq with common kernel style and makes the
behavior more intuitive.

Signed-off-by: Zihuan Zhang <zhangzihuan@kylinos.cn>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Link: https://patch.msgid.link/20250822070424.166795-2-zhangzihuan@kylinos.cn
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/cpufreq.c

index b8937737d09676a1634c6a65cef178a0012f5efe..d337f94f70a388311b620d1c75802968e37416c2 100644 (file)
@@ -664,10 +664,10 @@ unlock:
 
 static unsigned int cpufreq_parse_policy(char *str_governor)
 {
-       if (!strncasecmp(str_governor, "performance", CPUFREQ_NAME_LEN))
+       if (!strncasecmp(str_governor, "performance", strlen("performance")))
                return CPUFREQ_POLICY_PERFORMANCE;
 
-       if (!strncasecmp(str_governor, "powersave", CPUFREQ_NAME_LEN))
+       if (!strncasecmp(str_governor, "powersave", strlen("powersave")))
                return CPUFREQ_POLICY_POWERSAVE;
 
        return CPUFREQ_POLICY_UNKNOWN;