[LTP] [PATCH v2 2/8] Fallback PIDFD_GET_INFO related definitions

Cyril Hrubis chrubis@suse.cz
Mon Jul 7 13:48:11 CEST 2025


Hi!
>  configure.ac         |  2 ++
>  include/lapi/pidfd.h | 37 +++++++++++++++++++++++++++++++++++++
>  2 files changed, 39 insertions(+)
> 
> diff --git a/configure.ac b/configure.ac
> index 69c5be7362a0e9f2fdaf3e6bd01f92f6f4880108..7132c00df97870e234fd5b8c9fcaf1beb263cf06 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -259,6 +259,8 @@ AC_CHECK_TYPES([struct cachestat],,,[#include <sys/mman.h>])
>  AC_CHECK_TYPES([struct mnt_id_req],,,[#include <sys/mount.h>])
>  AC_CHECK_TYPES([struct statmount],,,[#include <sys/mount.h>])
>  
> +AC_CHECK_TYPES([struct pidfd_info],,,[#include <uapi/linux/pidfd.h>])
                                                         ^
							 Just: <linux/pidfd.h>

When kernel headers are packaged and later installed on a system they
do not have the uapi/ directory prefix anymore.

> +
>  # Tools knobs
>  
>  # Bash
> diff --git a/include/lapi/pidfd.h b/include/lapi/pidfd.h
> index 9ca8e5aa23626646ebb2f18880abd5e52298bfc6..55a44d5840c01bda7b31237c5c0d54ebba8155c5 100644
> --- a/include/lapi/pidfd.h
> +++ b/include/lapi/pidfd.h
> @@ -8,16 +8,53 @@
>  #define LAPI_PIDFD_H__
>  
>  #include <fcntl.h>
> +#include <stdint.h>
> +#include <sys/ioctl.h>
> +
>  #ifdef HAVE_SYS_PIDFD_H
>  # include <sys/pidfd.h>
>  #endif
> +
>  #include "config.h"
>  #include "lapi/syscalls.h"
>  
> +#ifndef HAVE_STRUCT_PIDFD_INFO
> +struct pidfd_info {
> +	uint64_t mask;
> +	uint64_t cgroupid;
> +	uint32_t pid;
> +	uint32_t tgid;
> +	uint32_t ppid;
> +	uint32_t ruid;
> +	uint32_t rgid;
> +	uint32_t euid;
> +	uint32_t egid;
> +	uint32_t suid;
> +	uint32_t sgid;
> +	uint32_t fsuid;
> +	uint32_t fsgid;
> +	int32_t exit_code;
> +	uint32_t coredump_mask;
> +	uint32_t __spare1;
> +};
> +#endif
> +
>  #ifndef PIDFD_NONBLOCK
>  #define PIDFD_NONBLOCK O_NONBLOCK
>  #endif

Generally you are supposed to indent the inner macros by spaces after
the hash. So it looks like:

#ifndef ..
# define
# ifdef
#  define
# endif
#endif

With these two small things fixed:

Reviewed-by: Cyril Hrubis <chrubis@suse.cz>

-- 
Cyril Hrubis
chrubis@suse.cz


More information about the ltp mailing list