tools/power x86_energy_perf_policy: Fix incorrect fopen mode usage
authorKaushlendra Kumar <kaushlendra.kumar@intel.com>
Wed, 13 Aug 2025 07:02:08 +0000 (12:32 +0530)
committerLen Brown <len.brown@intel.com>
Fri, 26 Sep 2025 03:12:00 +0000 (23:12 -0400)
The fopen_or_die() function was previously hardcoded
to open files in read-only mode ("r"), ignoring the
mode parameter passed to it. This patch corrects
fopen_or_die() to use the provided mode argument,
allowing for flexible file access as intended.

Additionally, the call to fopen_or_die() in
err_on_hypervisor() incorrectly used the mode
"ro", which is not a valid fopen mode. This is
fixed to use the correct "r" mode.

Signed-off-by: Kaushlendra Kumar <kaushlendra.kumar@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c

index ebda9c3..c883f21 100644 (file)
@@ -630,7 +630,7 @@ void cmdline(int argc, char **argv)
  */
 FILE *fopen_or_die(const char *path, const char *mode)
 {
-       FILE *filep = fopen(path, "r");
+       FILE *filep = fopen(path, mode);
 
        if (!filep)
                err(1, "%s: open failed", path);
@@ -644,7 +644,7 @@ void err_on_hypervisor(void)
        char *buffer;
 
        /* On VMs /proc/cpuinfo contains a "flags" entry for hypervisor */
-       cpuinfo = fopen_or_die("/proc/cpuinfo", "ro");
+       cpuinfo = fopen_or_die("/proc/cpuinfo", "r");
 
        buffer = malloc(4096);
        if (!buffer) {