2022-06-15 09:37:50

by Ding Xiang

[permalink] [raw]
Subject: [PATCH] selftests: vm: Fix resource leak when return error

When return on an error path, file handle need to be closed
to prevent resource leak

Signed-off-by: Ding Xiang <[email protected]>
---
tools/testing/selftests/vm/ksm_tests.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/tools/testing/selftests/vm/ksm_tests.c b/tools/testing/selftests/vm/ksm_tests.c
index 2fcf24312da8..f5e4e0bbd081 100644
--- a/tools/testing/selftests/vm/ksm_tests.c
+++ b/tools/testing/selftests/vm/ksm_tests.c
@@ -54,6 +54,7 @@ static int ksm_write_sysfs(const char *file_path, unsigned long val)
}
if (fprintf(f, "%lu", val) < 0) {
perror("fprintf");
+ fclose(f);
return 1;
}
fclose(f);
@@ -72,6 +73,7 @@ static int ksm_read_sysfs(const char *file_path, unsigned long *val)
}
if (fscanf(f, "%lu", val) != 1) {
perror("fscanf");
+ fclose(f);
return 1;
}
fclose(f);
--
2.31.1




2022-06-16 20:26:18

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: vm: Fix resource leak when return error

On 6/15/22 3:36 AM, Ding Xiang wrote:
> When return on an error path, file handle need to be closed
> to prevent resource leak
>
> Signed-off-by: Ding Xiang <[email protected]>
> ---
> tools/testing/selftests/vm/ksm_tests.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/tools/testing/selftests/vm/ksm_tests.c b/tools/testing/selftests/vm/ksm_tests.c
> index 2fcf24312da8..f5e4e0bbd081 100644
> --- a/tools/testing/selftests/vm/ksm_tests.c
> +++ b/tools/testing/selftests/vm/ksm_tests.c
> @@ -54,6 +54,7 @@ static int ksm_write_sysfs(const char *file_path, unsigned long val)
> }
> if (fprintf(f, "%lu", val) < 0) {
> perror("fprintf");
> + fclose(f);
> return 1;
> }
> fclose(f);
> @@ -72,6 +73,7 @@ static int ksm_read_sysfs(const char *file_path, unsigned long *val)
> }
> if (fscanf(f, "%lu", val) != 1) {
> perror("fscanf");
> + fclose(f);
> return 1;
> }
> fclose(f);
>

Looks good to me.

Reviewed-by: Shuah Khan <[email protected]>

thanks,
-- Shuah

2022-06-16 20:39:52

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: vm: Fix resource leak when return error

On 6/16/22 2:11 PM, Shuah Khan wrote:
> On 6/15/22 3:36 AM, Ding Xiang wrote:
>> When return on an error path, file handle need to be closed
>> to prevent resource leak
>>
>> Signed-off-by: Ding Xiang <[email protected]>
>> ---
>>   tools/testing/selftests/vm/ksm_tests.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/tools/testing/selftests/vm/ksm_tests.c b/tools/testing/selftests/vm/ksm_tests.c
>> index 2fcf24312da8..f5e4e0bbd081 100644
>> --- a/tools/testing/selftests/vm/ksm_tests.c
>> +++ b/tools/testing/selftests/vm/ksm_tests.c
>> @@ -54,6 +54,7 @@ static int ksm_write_sysfs(const char *file_path, unsigned long val)
>>       }
>>       if (fprintf(f, "%lu", val) < 0) {
>>           perror("fprintf");
>> +        fclose(f);
>>           return 1;
>>       }
>>       fclose(f);
>> @@ -72,6 +73,7 @@ static int ksm_read_sysfs(const char *file_path, unsigned long *val)
>>       }
>>       if (fscanf(f, "%lu", val) != 1) {
>>           perror("fscanf");
>> +        fclose(f);
>>           return 1;
>>       }
>>       fclose(f);
>>
>
> Looks good to me.
>
> Reviewed-by: Shuah Khan <[email protected]>
>

I applied this to linux-kselftest fixes for next rc.

thanks,
-- Shuah