[PATCH] selftests: prctl: Fix resource leaks

liujing posted 1 patch 1 year, 2 months ago
[PATCH] selftests: prctl: Fix resource leaks
Posted by liujing 1 year, 2 months ago
After using the fopen function successfully, you need to call
fclose to close the file before finally returning.

Signed-off-by: liujing <liujing@cmss.chinamobile.com>

diff --git a/tools/testing/selftests/prctl/set-process-name.c b/tools/testing/selftests/prctl/set-process-name.c
index 562f707ba771..7be7afff0cd2 100644
--- a/tools/testing/selftests/prctl/set-process-name.c
+++ b/tools/testing/selftests/prctl/set-process-name.c
@@ -66,9 +66,12 @@ int check_name(void)
 		return -EIO;
 
 	fscanf(fptr, "%s", output);
-	if (ferror(fptr))
+	if (ferror(fptr)) {
+		fclose(fptr);
 		return -EIO;
+	}
 
+	fclose(fptr);
 	int res = prctl(PR_GET_NAME, name, NULL, NULL, NULL);
 
 	if (res < 0)
-- 
2.27.0
Re: [PATCH] selftests: prctl: Fix resource leaks
Posted by Shuah Khan 1 year, 2 months ago
On 11/27/24 23:18, liujing wrote:
> After using the fopen function successfully, you need to call
> fclose to close the file before finally returning.
> 
> Signed-off-by: liujing <liujing@cmss.chinamobile.com>
> 
> diff --git a/tools/testing/selftests/prctl/set-process-name.c b/tools/testing/selftests/prctl/set-process-name.c
> index 562f707ba771..7be7afff0cd2 100644
> --- a/tools/testing/selftests/prctl/set-process-name.c
> +++ b/tools/testing/selftests/prctl/set-process-name.c
> @@ -66,9 +66,12 @@ int check_name(void)
>   		return -EIO;
>   
>   	fscanf(fptr, "%s", output);
> -	if (ferror(fptr))
> +	if (ferror(fptr)) {
> +		fclose(fptr);
>   		return -EIO;
> +	}
>   
> +	fclose(fptr);
>   	int res = prctl(PR_GET_NAME, name, NULL, NULL, NULL);
>   
>   	if (res < 0)

How did you find this problem? This file will be closed when
the test exits - do you need this fclose()?

thanks,
-- Shuah