Re: [PATCH] tools/power turbostat: close file after use

From: Chen Yu
Date: Sat Apr 30 2022 - 10:19:57 EST


On Sat, Apr 30, 2022 at 10:15:57AM -0400, Tom Rix wrote:
> The cppcheck reports this issue
> turbostat.c:2039]: (error) Resource leak: fp
>
> When the fscanf fails an error is returned without closing fp.
> Move the fclose so even if the fscanf fails, the file will be closed.
>
> Fixes: eae97e053fe3 ("tools/power turbostat: Support thermal throttle count print")
> Signed-off-by: Tom Rix <trix@xxxxxxxxxx>
> ---
> tools/power/x86/turbostat/turbostat.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c
> index ede31a4287a0..2e9a751af260 100644
> --- a/tools/power/x86/turbostat/turbostat.c
> +++ b/tools/power/x86/turbostat/turbostat.c
> @@ -2035,9 +2035,9 @@ int get_core_throt_cnt(int cpu, unsigned long long *cnt)
> if (!fp)
> return -1;
> ret = fscanf(fp, "%lld", &tmp);
> + fclose(fp);
> if (ret != 1)
> return -1;
> - fclose(fp);
> *cnt = tmp;
>
> return 0;
> --
Thank you Tom, and Colin has proposed a fix here:
https://lore.kernel.org/lkml/20220426131607.1520483-1-colin.i.king@xxxxxxxxx/

thanks,
Chenyu