xref: /aosp_15_r20/external/kernel-headers/original/uapi/linux/pidfd.h (revision f80ad8b4341604f5951dab671d41019a6d7087ce)
1*f80ad8b4SAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2*f80ad8b4SAndroid Build Coastguard Worker 
3*f80ad8b4SAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_PIDFD_H
4*f80ad8b4SAndroid Build Coastguard Worker #define _UAPI_LINUX_PIDFD_H
5*f80ad8b4SAndroid Build Coastguard Worker 
6*f80ad8b4SAndroid Build Coastguard Worker #include <linux/types.h>
7*f80ad8b4SAndroid Build Coastguard Worker #include <linux/fcntl.h>
8*f80ad8b4SAndroid Build Coastguard Worker #include <linux/ioctl.h>
9*f80ad8b4SAndroid Build Coastguard Worker 
10*f80ad8b4SAndroid Build Coastguard Worker /* Flags for pidfd_open().  */
11*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_NONBLOCK	O_NONBLOCK
12*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_THREAD	O_EXCL
13*f80ad8b4SAndroid Build Coastguard Worker 
14*f80ad8b4SAndroid Build Coastguard Worker /* Flags for pidfd_send_signal(). */
15*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_SIGNAL_THREAD		(1UL << 0)
16*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_SIGNAL_THREAD_GROUP	(1UL << 1)
17*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_SIGNAL_PROCESS_GROUP	(1UL << 2)
18*f80ad8b4SAndroid Build Coastguard Worker 
19*f80ad8b4SAndroid Build Coastguard Worker #define PIDFS_IOCTL_MAGIC 0xFF
20*f80ad8b4SAndroid Build Coastguard Worker 
21*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_CGROUP_NAMESPACE            _IO(PIDFS_IOCTL_MAGIC, 1)
22*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_IPC_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 2)
23*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_MNT_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 3)
24*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_NET_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 4)
25*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_PID_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 5)
26*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_PID_FOR_CHILDREN_NAMESPACE  _IO(PIDFS_IOCTL_MAGIC, 6)
27*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_TIME_NAMESPACE              _IO(PIDFS_IOCTL_MAGIC, 7)
28*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_TIME_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 8)
29*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_USER_NAMESPACE              _IO(PIDFS_IOCTL_MAGIC, 9)
30*f80ad8b4SAndroid Build Coastguard Worker #define PIDFD_GET_UTS_NAMESPACE               _IO(PIDFS_IOCTL_MAGIC, 10)
31*f80ad8b4SAndroid Build Coastguard Worker 
32*f80ad8b4SAndroid Build Coastguard Worker #endif /* _UAPI_LINUX_PIDFD_H */
33