[LTP] [PATCH] Correctly check if PIDFD_INFO_EXIT is available

Avinesh Kumar akumar@suse.de
Tue Jul 29 16:03:08 CEST 2025


Hi Andrea, 

Thank you for the fix.

Reviewed-by: Avinesh Kumar <akumar@suse.de>
Tested-by: Avinesh Kumar <akumar@suse.de>

-
Avinesh

On Tuesday, July 29, 2025 3:38:13 PM CEST Andrea Cervesato wrote:
> From: Andrea Cervesato <andrea.cervesato@suse.com>
> 
> When systems are not having the PIDFD_INFO_EXIT implementation,
> ioctl_pidfd testing suite might fail with:
> 
> 	ioctl_pidfd.h:32: TBROK: ioctl(...) failed: ENOTTY (25)
> 
> Fix the ioctl_pidfd_info_exit_supported() behavior, considering ENOTTY
> error like a sign for not having PIDFD_INFO_EXIT implemented in the
> system.
> 
> Signed-off-by: Andrea Cervesato <andrea.cervesato@suse.com>
> ---
>  testcases/kernel/syscalls/ioctl/ioctl_pidfd.h | 18 +++++++++++-------
>  1 file changed, 11 insertions(+), 7 deletions(-)
> 
> diff --git a/testcases/kernel/syscalls/ioctl/ioctl_pidfd.h b/testcases/kernel/syscalls/ioctl/ioctl_pidfd.h
> index 8249ac753cf7fb8a3b749d55c7f0c3b30482c114..b2de5389ef78e530e1a3be0525b0a6a238d1d009 100644
> --- a/testcases/kernel/syscalls/ioctl/ioctl_pidfd.h
> +++ b/testcases/kernel/syscalls/ioctl/ioctl_pidfd.h
> @@ -11,7 +11,7 @@
>  
>  static inline int ioctl_pidfd_info_exit_supported(void)
>  {
> -	int ret = 0;
> +	int ret;
>  	pid_t pid;
>  	int pidfd;
>  	struct pidfd_info info;
> @@ -29,13 +29,17 @@ static inline int ioctl_pidfd_info_exit_supported(void)
>  	pidfd = SAFE_PIDFD_OPEN(pid, 0);
>  	SAFE_WAITPID(pid, NULL, 0);
>  
> -	SAFE_IOCTL(pidfd, PIDFD_GET_INFO, &info);
> -	SAFE_CLOSE(pidfd);
> -
> -	if (info.mask & PIDFD_INFO_EXIT)
> -		ret = 1;
> +	ret = ioctl(pidfd, PIDFD_GET_INFO, &info);
> +	if (ret == -1) {
> +		if (errno != ENOTTY)
> +			tst_brk(TBROK | TERRNO, "ioctl error");
> +	} else {
> +		if (info.mask & PIDFD_INFO_EXIT)
> +			return 1;
> +	}
>  
> -	return ret;
> +	SAFE_CLOSE(pidfd);
> +	return 0;
>  }
>  
>  #endif
> 
> ---
> base-commit: 91e6272febf95e19a8300695dfc2089569adf9d8
> change-id: 20250729-ioctl_pidfd_supported-437d25a4c382
> 
> Best regards,
> 






More information about the ltp mailing list