diff mbox series

tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num()

Message ID 20240214001956.3087944-1-samasth.norway.ananda@oracle.com (mailing list archive)
State In Next
Delegated to: Rafael Wysocki
Headers show
Series tools/power x86_energy_perf_policy: Fix file leak in get_pkg_num() | expand

Commit Message

Samasth Norway Ananda Feb. 14, 2024, 12:19 a.m. UTC
In function get_pkg_num() if fopen_or_die() succeeds it returns a file
pointer to be used. But fclose() is never called before returning from
the function.

Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda@oracle.com>
---
Found this error through static analysis. This has only been compile
tested.
---
 tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Rafael J. Wysocki Feb. 22, 2024, 7:06 p.m. UTC | #1
On Wed, Feb 14, 2024 at 1:20 AM Samasth Norway Ananda
<samasth.norway.ananda@oracle.com> wrote:
>
> In function get_pkg_num() if fopen_or_die() succeeds it returns a file
> pointer to be used. But fclose() is never called before returning from
> the function.
>
> Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda@oracle.com>
> ---
> Found this error through static analysis. This has only been compile
> tested.
> ---
>  tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.c | 1 +
>  1 file changed, 1 insertion(+)
>
> 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 5fd9e594079c..ebda9c366b2b 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
> @@ -1241,6 +1241,7 @@ unsigned int get_pkg_num(int cpu)
>         retval = fscanf(fp, "%d\n", &pkg);
>         if (retval != 1)
>                 errx(1, "%s: failed to parse", pathname);
> +       fclose(fp);
>         return pkg;
>  }
>
> --

Applied as 6.9 material, thanks!
diff mbox series

Patch

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 5fd9e594079c..ebda9c366b2b 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
@@ -1241,6 +1241,7 @@  unsigned int get_pkg_num(int cpu)
 	retval = fscanf(fp, "%d\n", &pkg);
 	if (retval != 1)
 		errx(1, "%s: failed to parse", pathname);
+	fclose(fp);
 	return pkg;
 }