diff options
| author | Len Brown <len.brown@intel.com> | 2026-05-06 10:00:00 -0400 |
|---|---|---|
| committer | Len Brown <len.brown@intel.com> | 2026-09-29 14:53:09 -0400 |
| commit | e6362acc3e89275fd9eb4152c6f01ac0684e1052 (patch) | |
| tree | e24a624f1fc42a62162783698beda0f475a6d29f | |
| parent | 29da235d5d1f378b691abd94fac75735fda93f13 (diff) | |
| download | linux-next-e6362acc3e89275fd9eb4152c6f01ac0684e1052.tar.gz linux-next-e6362acc3e89275fd9eb4152c6f01ac0684e1052.zip | |
x86_energy_perf_policy: Prevent unlikely buffer overflow
Protect update_cpufreq_scaling_freq() from buffer overflow
if somehow it was called with a 13-digit CPU number...
Fixes: f1c35c73191b ("tools/power x86_energy_perf_policy: Version 2026.04.25")
Assisted-by: GitHub-Copilot:Claude-Sonnet-4.6
Signed-off-by: Len Brown <len.brown@intel.com>
| -rw-r--r-- | tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c b/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c index abd3cf2fdd39..3c4e376f6c77 100644 --- a/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c +++ b/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c @@ -1166,12 +1166,12 @@ int ratio_2_sysfs_khz(int ratio) */ void update_cpufreq_scaling_freq(int is_max, int cpu, unsigned int ratio) { - char pathname[64]; + char pathname[96]; FILE *fp; int retval; int khz; - sprintf(pathname, "/sys/devices/system/cpu/cpu%d/cpufreq/scaling_%s_freq", cpu, is_max ? "max" : "min"); + snprintf(pathname, sizeof(pathname), "/sys/devices/system/cpu/cpu%d/cpufreq/scaling_%s_freq", cpu, is_max ? "max" : "min"); fp = fopen(pathname, "w"); if (!fp) { |
