[LTP] [PATCH] ioctl_pidfd05: Check if PIDFD_INFO_EXIT is available

Petr Vorel pvorel@suse.cz
Wed Sep 17 19:46:00 CEST 2025


Hi Avinesh,

> This test also needs this check as it might fail with
> ioctl_pidfd05.c:45: TFAIL: ioctl(pidfd, PIDFD_GET_INFO, NULL) expected EINVAL: ENOTTY (25)
> ioctl_pidfd05.c:46: TFAIL: ioctl(pidfd, PIDFD_GET_INFO_SHORT, info_invalid) expected EINVAL: ENOTTY (25)
> when system does not have PIDFD_INFO_EXIT implementation.

Reviewed-by: Petr Vorel <pvorel@suse.cz>

Thanks for the fix!.  As a quick fix this would work, because
ioctl_pidfd_info_exit_supported() is using ioctl(fd, PIDFD_GET_INFO, ...).

But because PIDFD_GET_INFO was added in 6.12:
cdda1f26e74b ("pidfd: add ioctl to retrieve pid info") # v6.12-rc3
and PIDFD_INFO_EXIT in v6.14:
7477d7dce48a ("pidfs: allow to retrieve exit information") # v6.14-rc1
it'd make sense to create ioctl_pidfd_get_info_supported() which would
be also used by ioctl_pidfd_info_exit_supported().
Why? There is 6.12 LTSS kernel branch which will get TCONF instead of being
tested.

It could be done ioctl_pidfd_get_info_supported() could return int64_t mask
(__u64 mask struct pidfd_info member if supported or -1 if ioctl() returned -1.
ioctl_pidfd_info_exit_supported() would just evaluate that. Other option is just
code duplicity.

Kind regards,
Petr


More information about the ltp mailing list